Build Failed with PIC32
Hi,
Could anyone explain why my project failed to build. The compiler error message is listed below.
Particularly things such as "undefined reference to `vPortStartFirstTask’"
Nothing regarding the compiler has changed.
I am using the PIC32 compiler from MPLab
This project is a copy of the PIC32 demo project that comes with FreeRTOS
I can upload the project if someone tells me where.
Many thanks
Grant Brown
-———————————————————————
Debug build of project `C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABRTOSDemo.mcp’ started.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_PIC32MXSK=1′.
Mon Oct 27 16:04:44 2008
-———————————————————————
Clean: Deleting intermediary and output files.
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABmain.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABport.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABlist.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABqueue.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABtasks.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABheap_2.o".
Clean: Deleted file "C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABinit_PIC32MX360F512L.o".
Clean: Done.
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "main.c" -o"main.o" -MMD -MF"main.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
main.c: In function `main’:
main.c:90: warning: implicit declaration of function `VisualInitialization’
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "..\..SourceportableMPLABPIC32MXport.c" -o"port.o" -MMD -MF"port.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "..\..Sourcelist.c" -o"list.o" -MMD -MF"list.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "..\..Sourcequeue.c" -o"queue.o" -MMD -MF"queue.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "..\..Sourcetasks.c" -o"tasks.o" -MMD -MF"tasks.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "..\..SourceportableMemMangheap_2.c" -o"heap_2.o" -MMD -MF"heap_2.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L -x c -c "Generated FilesVDIInitinit_PIC32MX360F512L.c" -o"init_PIC32MX360F512L.o" -MMD -MF"init_PIC32MX360F512L.d" -I"." -I"." -I"..commoninclude" -I"..\..sourceportablemplabpic32mx" -I"..\..sourceinclude" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: "C:Program FilesMicrochipMPLAB C32binpic32-gcc.exe" -mprocessor=32MX360F512L "main.o" "port.o" "list.o" "queue.o" "tasks.o" "heap_2.o" "init_PIC32MX360F512L.o" -o"RTOSDemo.elf" -O3 -Wl,–defsym=__MPLAB_BUILD=1,–defsym=__MPLAB_DEBUG=1,–defsym=__MPLAB_DEBUGGER_PIC32MXSK=1,–defsym=_min_heap_size=0,–defsym=_min_heap_size=0,-Map="RTOSDemo.map"
port.o: In function `xPortStartScheduler’:
..\..SourceportableMPLABPIC32MX/port.c:163: undefined reference to `vPortStartFirstTask’
..\..SourceportableMPLABPIC32MX/port.c:163: relocation truncated to fit: R_MIPS_26 against `vPortStartFirstTask’
port.o: In function `__vector_dispatch_1′:
..\..SourceportableMPLABPIC32MXport.c:(.vector_1+0x0): undefined reference to `vPortYieldISR’
..\..SourceportableMPLABPIC32MXport.c:(.vector_1+0x0): relocation truncated to fit: R_MIPS_26 against `vPortYieldISR’
port.o: In function `__vector_dispatch_4′:
..\..SourceportableMPLABPIC32MXport.c:(.vector_4+0x0): undefined reference to `vT1InterruptHandler’
..\..SourceportableMPLABPIC32MXport.c:(.vector_4+0x0): relocation truncated to fit: R_MIPS_26 against `vT1InterruptHandler’
Link step failed.
-———————————————————————
Debug build of project `C:Program FilesMicrochipFreeRTOSDemoPIC32MX_MPLABRTOSDemo.mcp’ failed.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_PIC32MXSK=1′.
Mon Oct 27 16:04:50 2008
-———————————————————————
BUILD FAILED
Build Failed with PIC32
The functions it cannot find are all defined in FreeRTOSSourceportableMPLABPIC32MXport_asm.S – so I would guess this file is not included in your project.
Regards.
Build Failed with PIC32
I have just noticed that there is a new version of MPLAB available. Maybe this is why there have been a couple of PIC32 build problems in the last couple of days. I’m just downloading it now to see what effects it has on my build.
Build Failed with PIC32
I just tried with MPLAB V8.15 and a clean install of FreeRTOS.org V5.1.0 – all built with no problems.
MPLAB now contains a FreeRTOS viewer.
Regards.