Problems with PIC32MX port

akhe wrote on Tuesday, September 09, 2008:

Hi I try to build the daemo of the PIC32MX port but get failures asbelow

D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: address 0x9d085940 of RTOSDemo.elf section .text is not within region kseg0_program_mem
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .rodata [9d000000 -> 9d0001df] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .data [9d0001e0 -> 9d0002d3] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .sdata [9d0002d4 -> 9d0002e3] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .FreeRTOS [9d001e1c -> 9d0025ab] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: RTOSDemo.elf: section .text lma 0x9d000000 overlaps previous sections

What have I missed?

/Ake

rtel wrote on Tuesday, September 09, 2008:

I just tried a clean build using PIC32-gcc V3.4.4 and MPLAB V8.14 and did not get any problems.

Did you change anything at all from the demo provided in the download?
Did anything unexpected happen when you opened the workspace? (file not found for example).
Did you open the Workspace or the Project?  (the Workspace is the correct thing to open).

----------------------------------------------------------------------
Debug build of project `C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\PIC32MX_MPLAB\RTOSDemo.mcp’ started.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_REAL_ICE=1’.
Debug platform options are: `__ICD2RAM=1’.
Tue Sep 09 18:27:13 2008
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Deleted file “C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\PIC32MX_MPLAB\RTOSDemo.mcs”.
Clean: Done.
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “main.c” -o"main.o" -MMD -MF"main.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “ParTest\ParTest.c” -o"ParTest.o" -MMD -MF"ParTest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\portable\MPLAB\PIC32MX\port.c” -o"port.o" -MMD -MF"port.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\list.c” -o"list.o" -MMD -MF"list.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\queue.c” -o"queue.o" -MMD -MF"queue.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\tasks.c” -o"tasks.o" -MMD -MF"tasks.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"port_asm.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “…\…\Source\portable\MPLAB\PIC32MX\port_asm.S” -o"port_asm.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"RegisterTestTasks.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “RegisterTestTasks.s” -o"RegisterTestTasks.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\portable\MemMang\heap_2.c” -o"heap_2.o" -MMD -MF"heap_2.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\flash.c” -o"flash.o" -MMD -MF"flash.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\QPeek.c” -o"QPeek.o" -MMD -MF"QPeek.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\semtest.c” -o"semtest.o" -MMD -MF"semtest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\GenQTest.c” -o"GenQTest.o" -MMD -MF"GenQTest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\blocktim.c” -o"blocktim.o" -MMD -MF"blocktim.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “lcd.c” -o"lcd.o" -MMD -MF"lcd.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “serial\serial.c” -o"serial.o" -MMD -MF"serial.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\comtest.c” -o"comtest.o" -MMD -MF"comtest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"serial_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “serial\serial_isr.S” -o"serial_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “timertest.c” -o"timertest.o" -MMD -MF"timertest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"timertest_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “timertest_isr.S” -o"timertest_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\IntQueue.c” -o"IntQueue.o" -MMD -MF"IntQueue.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “IntQueueTimer.c” -o"IntQueueTimer.o" -MMD -MF"IntQueueTimer.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"IntQueueTimer_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “IntQueueTimer_isr.S” -o"IntQueueTimer_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “printf-stdarg.c” -o"printf-stdarg.o" -MMD -MF"printf-stdarg.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mdebugger -mprocessor=32MX360F512L “main.o” “ParTest.o” “port.o” “list.o” “queue.o” “tasks.o” “port_asm.o” “RegisterTestTasks.o” “heap_2.o” “flash.o” “QPeek.o” “semtest.o” “GenQTest.o” “blocktim.o” “lcd.o” “serial.o” “comtest.o” “serial_isr.o” “timertest.o” “timertest_isr.o” “IntQueue.o” “IntQueueTimer.o” “IntQueueTimer_isr.o” “printf-stdarg.o” -o"RTOSDemo.elf" -O3 -Wl,–defsym=__MPLAB_BUILD=1,–defsym=__MPLAB_DEBUG=1,–defsym=__MPLAB_DEBUGGER_REAL_ICE=1,–defsym=__ICD2RAM=1,–defsym=_min_heap_size=0,–defsym=_min_heap_size=0,-Map=“RTOSDemo.map”
Executing: “C:\Devtools\Microchip\MPLAB C32\bin\pic32-bin2hex.exe” “C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\PIC32MX_MPLAB\RTOSDemo.elf”
Loaded C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\PIC32MX_MPLAB\RTOSDemo.elf.
----------------------------------------------------------------------
Debug build of project `C:\E\Dev\FreeRTOS\WorkingCopy2\Demo\PIC32MX_MPLAB\RTOSDemo.mcp’ succeeded.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_REAL_ICE=1’.
Debug platform options are: `__ICD2RAM=1’.
Tue Sep 09 18:27:23 2008
----------------------------------------------------------------------
BUILD SUCCEEDED

akhe wrote on Tuesday, September 09, 2008:

Hi Richard,

I get no complaints at all when loading the project.  I’m new to the 32 bit compiler. The C18 compiler had a linkage file but can’t find it here. Looks like things are thrown into wrong sections.

This is the output I get from a compile

----------------------------------------------------------------------
Debug build of project `C:\FreeRTOS\Demo\PIC32MX_MPLAB\RTOSDemo.mcp’ started.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_PIC32MXSK=1’.
Tue Sep 09 20:07:33 2008
----------------------------------------------------------------------
Clean: Deleting intermediary and output files.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\main.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\ParTest.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\port.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\list.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\queue.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\tasks.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\port_asm.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\RegisterTestTasks.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\heap_2.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\flash.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\QPeek.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\semtest.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\GenQTest.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\blocktim.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\lcd.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\serial.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\comtest.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\serial_isr.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\timertest.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\timertest_isr.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\IntQueue.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\IntQueueTimer.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\IntQueueTimer_isr.o”.
Clean: Deleted file “C:\FreeRTOS\Demo\PIC32MX_MPLAB\printf-stdarg.o”.
Clean: Done.
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “main.c” -o"main.o" -MMD -MF"main.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “ParTest\ParTest.c” -o"ParTest.o" -MMD -MF"ParTest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\portable\MPLAB\PIC32MX\port.c” -o"port.o" -MMD -MF"port.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\list.c” -o"list.o" -MMD -MF"list.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\queue.c” -o"queue.o" -MMD -MF"queue.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\tasks.c” -o"tasks.o" -MMD -MF"tasks.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"port_asm.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “…\…\Source\portable\MPLAB\PIC32MX\port_asm.S” -o"port_asm.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"RegisterTestTasks.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “RegisterTestTasks.s” -o"RegisterTestTasks.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\…\Source\portable\MemMang\heap_2.c” -o"heap_2.o" -MMD -MF"heap_2.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\flash.c” -o"flash.o" -MMD -MF"flash.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\QPeek.c” -o"QPeek.o" -MMD -MF"QPeek.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\semtest.c” -o"semtest.o" -MMD -MF"semtest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\GenQTest.c” -o"GenQTest.o" -MMD -MF"GenQTest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\blocktim.c” -o"blocktim.o" -MMD -MF"blocktim.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “lcd.c” -o"lcd.o" -MMD -MF"lcd.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “serial\serial.c” -o"serial.o" -MMD -MF"serial.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\comtest.c” -o"comtest.o" -MMD -MF"comtest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"serial_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “serial\serial_isr.S” -o"serial_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “timertest.c” -o"timertest.o" -MMD -MF"timertest.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"timertest_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “timertest_isr.S” -o"timertest_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “…\Common\Minimal\IntQueue.c” -o"IntQueue.o" -MMD -MF"IntQueue.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “IntQueueTimer.c” -o"IntQueueTimer.o" -MMD -MF"IntQueueTimer.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -c -MMD -MF"IntQueueTimer_isr.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG “IntQueueTimer_isr.S” -o"IntQueueTimer_isr.o" -I"…\…\Source\portable\MPLAB\PIC32MX" -I"." -Wa,–defsym=__DEBUG=1,–keep-locals,–gdwarf-2
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L -x c -c “printf-stdarg.c” -o"printf-stdarg.o" -MMD -MF"printf-stdarg.d" -I"." -I"." -I"…\common\include" -I"…\…\source\portable\mplab\pic32mx" -I"…\…\source\include" -D__DEBUG -g -DMPLAB_PIC32MX_PORT -Wall -fomit-frame-pointer
Executing: “D:\Program\Microchip\MPLAB C32\bin\pic32-gcc.exe” -mprocessor=32MX360F512L “main.o” “ParTest.o” “port.o” “list.o” “queue.o” “tasks.o” “port_asm.o” “RegisterTestTasks.o” “heap_2.o” “flash.o” “QPeek.o” “semtest.o” “GenQTest.o” “blocktim.o” “lcd.o” “serial.o” “comtest.o” “serial_isr.o” “timertest.o” “timertest_isr.o” “IntQueue.o” “IntQueueTimer.o” “IntQueueTimer_isr.o” “printf-stdarg.o” -o"RTOSDemo.elf" -O3 -Wl,–defsym=__MPLAB_BUILD=1,–defsym=__MPLAB_DEBUG=1,–defsym=__MPLAB_DEBUGGER_PIC32MXSK=1,–defsym=_min_heap_size=0,-Map=“RTOSDemo.map”
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: address 0x9d085940 of RTOSDemo.elf section .text is not within region kseg0_program_mem
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .rodata [9d000000 -> 9d0001df] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .data [9d0001e0 -> 9d0002d3] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .sdata [9d0002d4 -> 9d0002e3] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: section .FreeRTOS [9d001e1c -> 9d0025ab] overlaps section .text [9d000000 -> 9d08593f]
D:\Program\Microchip\MPLAB C32\bin\…\lib\gcc\pic32mx\3.4.4\…\…\…\…\pic32mx\bin\ld.exe: RTOSDemo.elf: section .text lma 0x9d000000 overlaps previous sections
This appears to be a limited version of the C32 compiler.  (Consider this when interpreting error messages.)
Link step failed.
----------------------------------------------------------------------
Debug build of project `C:\FreeRTOS\Demo\PIC32MX_MPLAB\RTOSDemo.mcp’ failed.
Preprocessor symbol `__DEBUG’ is defined.
Target debug platform is `__MPLAB_DEBUGGER_PIC32MXSK=1’.
Tue Sep 09 20:08:00 2008
----------------------------------------------------------------------
BUILD FAILED

Cheers
/Ake

picmeup wrote on Tuesday, September 09, 2008:

Your output say "This appears to be a limited version of the C32 compiler.  (Consider this when interpreting error messages.) Link step failed." Did you register to get the full free version of C32.

akhe wrote on Tuesday, September 09, 2008:

Did you register to get the full free version of C32.  ???

How do I do that?

rtel wrote on Tuesday, September 09, 2008:

The original versions of C32 used to be very restricted until you registered.  Once registered the restrictions were removed (for a time anyway).  As far as I know the latest versions of C32 don’t have this requirement and I cannot see anything on the Microchip WEB site that indicates otherwise.

I don’t seem to have any special linker script options set.

I do see that I compiled with -O3 optimisation on, can you try the same to see if its simply a code size issue (the obvious thing of course).

Regards.

akhe wrote on Tuesday, September 09, 2008:

Hi Richard,

I tried to reinstall the compiler and now everything works. Strange. Everything before was just plain  vanilla from the installation CD that came with the PIC32MX starter kit.  Oh well I have had poblems with the installs from Microchip before…

Will use FreeRTOS for the first time on a real project. I’m one of the survivers of the PIC32MX challange contest and will use it for my SweetBox design (http://mypic32.com/web/guest/contestantsprofiles?profileID=43308) and probably later for all stuff at http://www.vscp.org

Thanks for your kind help. Keep up the good work!

Cheers
/Ake

rtel wrote on Tuesday, September 09, 2008:

Excellent - good luck in the competition!

Regards.