wrapup problem? moving bsp fro 4.5.0 to 4.6pre1

Ralf Corsepius corsepiu at faw.uni-ulm.de
Mon Mar 3 06:10:54 UTC 2003


Am Mon, 2003-03-03 um 06.00 schrieb Wendell Thompson:
> I'm trying to get my old custom BSP from RTEMS 4.5.0 integrated into the 
> 4.6pre1 snapshot.
> 
> 
> The build fails when linking the ticker sample:
> 
> m68k-rtems-gcc --pipe -B../../../../../lib/ 
> -B../../../../../clc5206_am/lib/ -specs bsp_specs -qrtems    -m5200 
> -fno-exceptions -fno-rtti  -O4 -fomit-frame-pointer -g -Wall -ansi -fasm 
>    -o o-optimize/ticker.exe -Xlinker -Map -Xlinker mapfile 
> o-optimize/init.o o-optimize/tasks.o 
> ../../../../../clc5206_am/lib/no-dpmem.rel 
> ../../../../../clc5206_am/lib/no-event.rel 
> ../../../../../clc5206_am/lib/no-msg.rel 
> ../../../../../clc5206_am/lib/no-mp.rel 
> ../../../../../clc5206_am/lib/no-part.rel 
> ../../../../../clc5206_am/lib/no-signal.rel 
> ../../../../../clc5206_am/lib/no-timer.rel 
> ../../../../../clc5206_am/lib/no-rtmon.rel
> o-optimize/init.o:itimerspec/../../../../../../../c/src/tests/samples/ticker/init.c:53: 
> undefined reference to `Clock_initialize'
> o-optimize/init.o:itimerspec/../../../../../../../c/src/tests/samples/ticker/init.c:54: 
> undefined reference to `Clock_control'
> collect2: ld returned 1 exit status
> 
> 
> clock.rel exists and contains the missing functions:
> 
> wentho at linux:/usr/local/rtems-4.6.0pre1/build-rtems-m68k> nm -g 
> ./m68k-rtems/c/clc5206_am/lib/libbsp/m68k/clc5206_am/clock/o-optimize/clock.rel 
> | grep Clock
> 000000da T Clock_control
> 00000004 B Clock_driver_ticks
> 0000001e T Clock_exit
> 0000004c T Clock_initialize
> 00000000 T Clock_isr
> 
> However, librtemscpu.a does NOT contain the clock functions.
You are looking at the wrong place. Your clock.rel seems to be
bsp-specific, so it should be contained in librtemsbsp.a.

> This is wrapup/Makefile.am:
This was cpukit/wrapup/Makefile.am

You might want to look into your BSP's
c/src/lib/libbsp/<cpu>/<bsp>/wrapup/Makefile.am

and compare it to the Makefile.ams of similar BSPs. 

> Help!!!

You probably also need to adapt your BSP's bsp_specs.

[Background: Since 4.5, librtems.a has been split into librtemscpu.a and
librtemsbsp.a, so you need to reflect this change to your bsp_specs,]

Ralf





More information about the users mailing list