Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Loading

Error on compile for ARM mode in LPC2129

Posted by William Basser on October 8, 2009
I do not set any thumb or thumb interworking flags yet I get errors on linking indicated the problem. I have attached a file with the captured build commands and link commands? Any help would be appreciated.


-------- begin --------
arm-elf-gcc (GCC) 4.1.1 (WinARM)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Compiling C (ARM-only): processctl.c
arm-elf-gcc -c
-mcpu=arm7tdmi
-I.
-g
-DROM_RUN
-DGCC_ARM7
-DUSE_FREE_RTOS
-Os
-Wall
-Wextra
-Wshadow
-Wpointer-arith
-Wbad-function-cast
-Wcast-align
-Wsign-compare
-Waggregate-return
-Wreturn-type
-Wstrict-prototypes
-Wmissing-prototypes
-Wmissing-declarations
-Wunused
-fomit-frame-pointer
-fno-strict-aliasing
-std=gnu99
-I/Cyber/SfwLibraries/arm7
-I/Cyber/SfwLibraries/arm7/LPC21xx
-I/Cyber/SfwLibraries/DevHandlers/arm7/LPC21xx
-I/Cyber/SfwLibraries/Utilities
-I/FreeRTOS/Source/include
-I/Cyber/SfwLibraries/FreeRTOS/LPC21xx
-MD
-MP
-MF
.dep/processctl.o.d
processctl.c
-o processctl.o

Linking: ProcessControl.elf
arm-elf-gcc
-mcpu=arm7tdmi
-I.
-g
-DROM_RUN
-DGCC_ARM7
-DUSE_FREE_RTOS
-Os
-Wall
-Wextra
-Wshadow
-Wpointer-arith
-Wbad-function-cast
-Wcast-align
-Wsign-compare
-Waggregate-return
-Wreturn-type
-Wstrict-prototypes
-Wmissing-prototypes
-Wmissing-declarations
-Wunused
-fomit-frame-pointer
-fno-strict-aliasing
-std=gnu99
-I/Cyber/SfwLibraries/arm7
-I/Cyber/SfwLibraries/arm7/LPC21xx
-I/Cyber/SfwLibraries/DevHandlers/arm7/LPC21xx
-I/Cyber/SfwLibraries/Utilities
-I/FreeRTOS/Source/include
-I/Cyber/SfwLibraries/FreeRTOS/LPC21xx
processctl.o
/Cyber/SfwLibraries/DevHandlers/arm7/LPC21xx/sysconf.o
/Cyber/SfwLibraries/DevHandlers/arm7/LPC21xx/tm0hand.o
/Cyber/SfwLibraries/DevHandlers/arm7/LPC21xx/vichand.o
/FreeRTOS/Source/list.o
/FreeRTOS/Source/queue.o
/FreeRTOS/Source/tasks.o
/Cyber/SfwLibraries/FreeRTOS/LPC21xx/port.o
/FreeRTOS/Source/portable/MemMang/heap_2.o
-nostartfiles
/Cyber/SfwLibraries/arm7/LPC21xx/crt0.o
-Xlinker
-oProcessControl.elf
-Xlinker
-M
-Xlinker
-Map=ProcessControl.map


G:\Cyber\ProcessController\ctl\sfw>make >make.txt
processctl.c: In function 'LedTask':
processctl.c:150: warning: statement with no effect
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: /Cyber/SfwLibraries/arm7/LPC21xx/crt0.o does not support interworking,
whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_udivsi3.o) do
es not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_dvmd_tls.o) d
oes not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_addsubdf3.o)
does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_muldivdf3.o)
does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_fixunsdfsi.o)
does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(memcpy.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(memset.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(sprintf.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(strcat.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(strncpy.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(vfprintf.o) does not support interworking, whereas ProcessControl.elf do
es
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(wcrtomb.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(wcsrtombs.o) does not support interworking, whereas ProcessControl.elf d
oes
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(wctomb_r.o) does not support interworking, whereas ProcessControl.elf do
es
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(wsetup.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(dtoa.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(fflush.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(findfp.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(freer.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(fvwrite.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(fwalk.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(impure.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(locale.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(makebuf.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(mallocr.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(memchr.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(memmove.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(mlock.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(mprec.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(reallocr.o) does not support interworking, whereas ProcessControl.elf do
es
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(s_isinf.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(s_isnan.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(stdio.o) does not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(strcmp.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(strlen.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(callocr.o) does not support interworking, whereas ProcessControl.elf doe
s
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib
\libg.a(fclose.o) does not support interworking, whereas ProcessControl.elf does

c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_divsi3.o) doe
s not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_umodsi3.o) do
es not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_modsi3.o) doe
s not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_cmpdf2.o) doe
s not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
Warning: c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1\libgcc.a(_fixdfsi.o) do
es not support interworking, whereas ProcessControl.elf does
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
/FreeRTOS/Source/tasks.o(vTaskSuspendAll): warning: interworking not enabled.
first occurrence: /FreeRTOS/Source/portable/MemMang/heap_2.o: thumb call to ar
m
/FreeRTOS/Source/portable/MemMang/heap_2.o: In function `pvPortMalloc':
heap_2.c:(.text+0xe): warning: internal error: dangerous error
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
/FreeRTOS/Source/tasks.o(xTaskResumeAll): warning: interworking not enabled.
first occurrence: /FreeRTOS/Source/portable/MemMang/heap_2.o: thumb call to ar
m
heap_2.c:(.text+0x186): warning: internal error: dangerous error
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
/FreeRTOS/Source/tasks.o(vTaskSuspendAll): warning: interworking not enabled.
first occurrence: /FreeRTOS/Source/portable/MemMang/heap_2.o: thumb call to ar
m
/FreeRTOS/Source/portable/MemMang/heap_2.o: In function `vPortFree':
heap_2.c:(.text+0x1e2): warning: internal error: dangerous error
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/bin/ld.exe:
/FreeRTOS/Source/tasks.o(xTaskResumeAll): warning: interworking not enabled.
first occurrence: /FreeRTOS/Source/portable/MemMang/heap_2.o: thumb call to ar
m
heap_2.c:(.text+0x228): warning: internal error: dangerous error
/Cyber/SfwLibraries/arm7/LPC21xx/crt0.o: In function `abort':
/Cyber/SfwLibraries/arm7/LPC21xx/crt0.S:165: undefined reference to `_data'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(f
reer.o): In function `_malloc_trim_r':
mallocr.c:(.text+0x48): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x64): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x84): undefined reference to `_sbrk_r'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(m
akebuf.o): In function `__smakebuf':
makebuf.c:(.text+0x3c): undefined reference to `_fstat_r'
makebuf.c:(.text+0x110): undefined reference to `isatty'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(m
allocr.o): In function `_malloc_r':
mallocr.c:(.text+0x424): undefined reference to `_sbrk_r'
mallocr.c:(.text+0x4cc): undefined reference to `_sbrk_r'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(s
tdio.o): In function `__sclose':
stdio.c:(.text+0xc): undefined reference to `_close_r'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(s
tdio.o): In function `__sseek':
stdio.c:(.text+0x30): undefined reference to `_lseek_r'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(s
tdio.o): In function `__swrite':
stdio.c:(.text+0x84): undefined reference to `_lseek_r'
stdio.c:(.text+0xac): undefined reference to `_write_r'
c:/winarm-20060606/bin/../lib/gcc/arm-elf/4.1.1/../../../../arm-elf/lib\libg.a(s
tdio.o): In function `__sread':
stdio.c:(.text+0xd0): undefined reference to `_read_r'
collect2: ld returned 1 exit status
make: *** [ProcessControl.elf] Error 1

G:\Cyber\ProcessController\ctl\sfw>


[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

Version 10.1.0 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


Careers

FreeRTOS and other embedded software careers at AWS.



FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Renesas

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner