Problems upgrading a BSP from RTEMS 4.5 to 4.6.2

Joel Sherrill <joel@OARcorp.com> joel.sherrill at OARcorp.com
Fri May 20 18:53:04 UTC 2005


Shadi T. Khasawneh wrote:
> Now, after doing the suggested modifications, I'm getting the following
> errors:
> 
> Errors when using the original linkcmds (the one copied from 4.5):
> ---------------------------------------------------------------------- 
> mkdir -p --
> ../../../../../pmc694/tests
> powerpc-rtems-gcc --pipe -B../../../../../lib/
> -B../../../../../pmc694/lib/ -specs bsp_specs -qrtems
> -DPACKAGE_NAME=\"rtems-c-src-tests-samples\"
> -DPACKAGE_TARNAME=\"rtems-c-src-tests-samples\"
> -DPACKAGE_VERSION=\"4.6.2\" -DPACKAGE_STRING=\"rtems-c-src-tests-samples\
> 4.6.2\"
> -DPACKAGE_BUGREPORT=\"rtems-bugs at rtems.com\"    -isystem
> ../../../../../pmc694/lib/include     -mcpu=603e
> -DDONT_OFFLOAD_RX_CHECKSUM -DDONT_OFFLOAD_TX_CHECKSUM -Dppc603e
> -D_OLD_EXCEPTIONS  -O4 -fno-keep-inline-functions -g -Wall -ansi -fasm  -o
> o-optimize/init.o -c
> ../../../../../../../rtems-4.6.2/c/src/tests/samples/hello/init.c
> powerpc-rtems-gcc --pipe -B../../../../../lib/
> -B../../../../../pmc694/lib/ -specs bsp_specs -qrtems    -mcpu=603e
> -DDONT_OFFLOAD_RX_CHECKSUM -DDONT_OFFLOAD_TX_CHECKSUM -Dppc603e
> -D_OLD_EXCEPTIONS  -O4 -fno-keep-inline-functions -g -Wall -ansi -fasm
> -Wl,-Map,o-optimize/hello.map -o o-optimize/hello.elf o-optimize/init.o
> ../../../../../pmc694/lib/no-dpmem.rel
> ../../../../../pmc694/lib/no-event.rel
> ../../../../../pmc694/lib/no-msg.rel ../../../../../pmc694/lib/no-mp.rel
> ../../../../../pmc694/lib/no-part.rel
> ../../../../../pmc694/lib/no-signal.rel
> ../../../../../pmc694/lib/no-timer.rel
> ../../../../../pmc694/lib/no-rtmon.rel
> ../../../../../pmc694/lib/no-event.rel: In function `s.got':
> no-event.c(*ABS*+0x100064): multiple definition of `_etext'
> no-event.c(*ABS*+0x100064): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-event.rel: In function `_end':
> no-event.c(*ABS*+0x108068): multiple definition of `_end'
> ../../../../../pmc694/lib/no-event.rel: In function `s.got':
> no-event.c(*ABS*+0x100064): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-msg.rel: In function `s.got':
> no-msg.c(*ABS*+0x100214): multiple definition of `_etext'
> no-msg.c(*ABS*+0x100214): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-msg.rel: In function `_end':
> no-msg.c(*ABS*+0x108218): multiple definition of `_end'
> ../../../../../pmc694/lib/no-msg.rel: In function `s.got':
> no-msg.c(*ABS*+0x100214): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-mp.rel: In function `s.got':
> no-mp.c(*ABS*+0x100000): multiple definition of `_etext'
> no-mp.c(*ABS*+0x100000): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-mp.rel: In function `_end':
> no-mp.c(*ABS*+0x108008): multiple definition of `_end'
> ../../../../../pmc694/lib/no-mp.rel: In function `s.got':
> no-mp.c(*ABS*+0x100000): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-signal.rel: In function `s.got':
> no-signal.c(*ABS*+0x100064): multiple definition of `_etext'
> no-signal.c(*ABS*+0x100064): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-signal.rel: In function `_end':
> no-signal.c(*ABS*+0x108068): multiple definition of `_end'
> ../../../../../pmc694/lib/no-signal.rel: In function `s.got':
> no-signal.c(*ABS*+0x100064): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-timer.rel: In function `s.got':
> no-timer.c(*ABS*+0x100154): multiple definition of `_etext'
> no-timer.c(*ABS*+0x100154): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-timer.rel: In function `_end':
> no-timer.c(*ABS*+0x108158): multiple definition of `_end'
> ../../../../../pmc694/lib/no-timer.rel: In function `s.got':
> no-timer.c(*ABS*+0x100154): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-rtmon.rel: In function `s.got':
> no-rtmon.c(*ABS*+0x100150): multiple definition of `_etext'
> no-rtmon.c(*ABS*+0x100150): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-rtmon.rel: In function `_end':
> no-rtmon.c(*ABS*+0x108150): multiple definition of `_end'
> ../../../../../pmc694/lib/no-rtmon.rel: In function `s.got':
> no-rtmon.c(*ABS*+0x100150): multiple definition of `s.got'
> ../../../../../pmc694/lib/librtemsbsp.a(bcopy.o): In function `strlen':
> bcopy.o(.text+0x94): multiple definition of `strlen'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/../../../../powerpc-rtems/lib/m603e/roe/libc.a(strlen.o):/home/rtems/src/packages/BUILD/rtems-4.6-powerpc-rtems-gcc-newlib-gcc3.2.3newlib1.11.0/build/powerpc-rtems/m603e/roe/newlib/libc/string/../../../../../../../gcc-3.2.3/newlib/libc/string/strlen.c:71:
> first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `s.got':
> <built-in>(*ABS*+0x1009bc): multiple definition of `_etext'
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `_edata':
> <built-in>(*ABS*+0x1009c4): multiple definition of `_edata'
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `_end':
> <built-in>(*ABS*+0x1089c8): multiple definition of `_end'
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `s.got':
> <built-in>(*ABS*+0x1009bc): multiple definition of `s.got'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/../../../../powerpc-rtems/bin/ld:
> warning: no memory region specified for section `.eh_frame'
> ../../../../../pmc694/lib/librtemscpu.a(threadhandler.o): In function
> `_Thread_Handler':
> /shadi/rtems/bb/powerpc-rtems/c/pmc694/exec/score/../../../../../../rtems-4.6.2/cpukit/score/src/threadhandler.c:112:
> undefined reference to `_init'
> /shadi/rtems/bb/powerpc-rtems/c/pmc694/exec/score/../../../../../../rtems-4.6.2/cpukit/score/src/threadhandler.c:112:
> undefined reference to `_init'
> /shadi/rtems/bb/powerpc-rtems/c/pmc694/exec/score/../../../../../../rtems-4.6.2/cpukit/score/src/threadhandler.c:113:
> undefined reference to `_init'
> collect2: ld returned 1 exit status
> gmake[5]: *** [o-optimize/hello.exe] Error 1
> gmake[5]: Leaving directory
> `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests/samples/hello'
> gmake[4]: *** [all-recursive] Error 1
> gmake[4]: Leaving directory
> `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests/samples'
> gmake[3]: *** [all-recursive] Error 1
> gmake[3]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests'
> gmake[2]:
> *** [all-recursive] Error 1
> gmake[2]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c/pmc694'
> gmake[1]: ***
> [all-recursive] Error 1
> gmake[1]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c'
> gmake: *** [all-recursive] Error 1
> ----------------------------------------------------------------------
> 
> Error using score603e linkcmds:
> ----------------------------------------------------------------------
> powerpc-rtems-gcc --pipe -B../../../../../lib/
> -B../../../../../pmc694/lib/ -specs bsp_specs -qrtems
> -DPACKAGE_NAME=\"rtems-c-src-tests-samples\"
> -DPACKAGE_TARNAME=\"rtems-c-src-tests-samples\"
> -DPACKAGE_VERSION=\"4.6.2\" -DPACKAGE_STRING=\"rtems-c-src-tests-samples\
> 4.6.2\"
> -DPACKAGE_BUGREPORT=\"rtems-bugs at rtems.com\"    -isystem
> ../../../../../pmc694/lib/include     -mcpu=603e
> -DDONT_OFFLOAD_RX_CHECKSUM -DDONT_OFFLOAD_TX_CHECKSUM -Dppc603e
> -D_OLD_EXCEPTIONS  -O4 -fno-keep-inline-functions -g -Wall -ansi -fasm  -o
> o-optimize/init.o -c
> ../../../../../../../rtems-4.6.2/c/src/tests/samples/hello/init.c
> powerpc-rtems-gcc --pipe -B../../../../../lib/
> -B../../../../../pmc694/lib/ -specs bsp_specs -qrtems    -mcpu=603e
> -DDONT_OFFLOAD_RX_CHECKSUM -DDONT_OFFLOAD_TX_CHECKSUM -Dppc603e
> -D_OLD_EXCEPTIONS  -O4 -fno-keep-inline-functions -g -Wall -ansi -fasm
> -Wl,-Map,o-optimize/hello.map -o o-optimize/hello.elf o-optimize/init.o
> ../../../../../pmc694/lib/no-dpmem.rel
> ../../../../../pmc694/lib/no-event.rel
> ../../../../../pmc694/lib/no-msg.rel ../../../../../pmc694/lib/no-mp.rel
> ../../../../../pmc694/lib/no-part.rel
> ../../../../../pmc694/lib/no-signal.rel
> ../../../../../pmc694/lib/no-timer.rel
> ../../../../../pmc694/lib/no-rtmon.rel
> ../../../../../pmc694/lib/no-dpmem.rel: In function `__init':
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-dpmem.rel: In function `__fini':
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-event.rel: In function
> `__stop_set_sysctl_set':
> no-event.c(*ABS*+0x100070): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-event.rel: In function `__init':
> ../../../../../pmc694/lib/no-event.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-event.rel: In function `__init':
> ../../../../../pmc694/lib/no-event.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-event.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-event.rel(.text+0x70): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-event.rel: In function
> `__stop_set_sysctl_set':
> no-event.c(*ABS*+0x100070): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-event.rel: In function `__fini':
> ../../../../../pmc694/lib/no-event.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-event.rel: In function `__fini':
> ../../../../../pmc694/lib/no-event.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-event.rel: In function `_edata':
> ../../../../../pmc694/lib/no-event.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-event.rel: In function `_end':
> ../../../../../pmc694/lib/no-event.rel(.bss+0x8000): multiple definition
> of `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-event.rel: In function `s.got':
> ../../../../../pmc694/lib/no-event.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `__stop_set_sysctl_set':
> no-msg.c(*ABS*+0x100220): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-msg.rel: In function `__init':
> ../../../../../pmc694/lib/no-msg.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `__init':
> ../../../../../pmc694/lib/no-msg.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-msg.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-msg.rel(.text+0x220): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `__stop_set_sysctl_set':
> no-msg.c(*ABS*+0x100220): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-msg.rel: In function `__fini':
> ../../../../../pmc694/lib/no-msg.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `__fini':
> ../../../../../pmc694/lib/no-msg.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `_edata':
> ../../../../../pmc694/lib/no-msg.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `_end':
> ../../../../../pmc694/lib/no-msg.rel(.bss+0x8000): multiple definition of
> `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-msg.rel: In function `s.got':
> ../../../../../pmc694/lib/no-msg.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `__stop_set_sysctl_set':
> no-mp.c(*ABS*+0x100000): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-mp.rel: In function `__init':
> ../../../../../pmc694/lib/no-mp.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `__init':
> ../../../../../pmc694/lib/no-mp.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-mp.rel(.text+0x0): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `__stop_set_sysctl_set':
> no-mp.c(*ABS*+0x100000): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-mp.rel: In function `__fini':
> ../../../../../pmc694/lib/no-mp.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `__fini':
> ../../../../../pmc694/lib/no-mp.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `_edata':
> ../../../../../pmc694/lib/no-mp.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `_end':
> ../../../../../pmc694/lib/no-mp.rel(.bss+0x8008): multiple definition of
> `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-mp.rel: In function `s.got':
> ../../../../../pmc694/lib/no-mp.rel(.got+0x0): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `__init':
> ../../../../../pmc694/lib/no-part.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `__init':
> ../../../../../pmc694/lib/no-part.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-part.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-part.rel(.text+0x100): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `__fini':
> ../../../../../pmc694/lib/no-part.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `__fini':
> ../../../../../pmc694/lib/no-part.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-part.rel: In function `_edata':
> ../../../../../pmc694/lib/no-part.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `_end':
> ../../../../../pmc694/lib/no-part.rel(.bss+0x8000): multiple definition of
> `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-part.rel: In function `s.got':
> ../../../../../pmc694/lib/no-part.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function
> `__stop_set_sysctl_set':
> no-signal.c(*ABS*+0x100070): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-signal.rel: In function `__init':
> ../../../../../pmc694/lib/no-signal.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function `__init':
> ../../../../../pmc694/lib/no-signal.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-signal.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-signal.rel(.text+0x70): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function
> `__stop_set_sysctl_set':
> no-signal.c(*ABS*+0x100070): multiple definition of
> `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-signal.rel: In function `__fini':
> ../../../../../pmc694/lib/no-signal.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function `__fini':
> ../../../../../pmc694/lib/no-signal.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-signal.rel: In function `_edata':
> ../../../../../pmc694/lib/no-signal.rel(.sdata+0x0): multiple definition
> of `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function `_end':
> ../../../../../pmc694/lib/no-signal.rel(.bss+0x8000): multiple definition
> of `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-signal.rel: In function `s.got':
> ../../../../../pmc694/lib/no-signal.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function
> `__stop_set_sysctl_set':
> no-timer.c(*ABS*+0x100160): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-timer.rel: In function `__init':
> ../../../../../pmc694/lib/no-timer.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function `__init':
> ../../../../../pmc694/lib/no-timer.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-timer.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-timer.rel(.text+0x160): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function
> `__stop_set_sysctl_set':
> no-timer.c(*ABS*+0x100160): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-timer.rel: In function `__fini':
> ../../../../../pmc694/lib/no-timer.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function `__fini':
> ../../../../../pmc694/lib/no-timer.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-timer.rel: In function `_edata':
> ../../../../../pmc694/lib/no-timer.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function `_end':
> ../../../../../pmc694/lib/no-timer.rel(.bss+0x8000): multiple definition
> of `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-timer.rel: In function `s.got':
> ../../../../../pmc694/lib/no-timer.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function
> `__stop_set_sysctl_set':
> no-rtmon.c(*ABS*+0x100150): multiple definition of `_etext'
> ../../../../../pmc694/lib/no-rtmon.rel: In function `__init':
> ../../../../../pmc694/lib/no-rtmon.rel(.init+0x0): multiple definition of
> `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function `__init':
> ../../../../../pmc694/lib/no-rtmon.rel(.init+0x0): multiple definition of
> `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function
> `__start_set_sysctl_set':
> ../../../../../pmc694/lib/no-rtmon.rel(.text+0x150): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function
> `__stop_set_sysctl_set':
> no-rtmon.c(*ABS*+0x100150): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/no-rtmon.rel: In function `__fini':
> ../../../../../pmc694/lib/no-rtmon.rel(.fini+0x0): multiple definition of
> `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function `__fini':
> ../../../../../pmc694/lib/no-rtmon.rel(.fini+0x0): multiple definition of
> `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function `_edata':
> ../../../../../pmc694/lib/no-rtmon.rel(.sdata+0x0): multiple definition of
> `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function `_end':
> ../../../../../pmc694/lib/no-rtmon.rel(.bss+0x8000): multiple definition
> of `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/no-rtmon.rel: In function `s.got':
> ../../../../../pmc694/lib/no-rtmon.rel(.got+0x0): multiple definition of
> `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(bcopy.o): In function `strlen':
> bcopy.o(.text+0x94): multiple definition of `strlen'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/../../../../powerpc-rtems/lib/m603e/roe/libc.a(strlen.o):/home/rtems/src/packages/BUILD/rtems-4.6-powerpc-rtems-gcc-newlib-gcc3.2.3newlib1.11.0/build/powerpc-rtems/m603e/roe/newlib/libc/string/../../../../../../../gcc-3.2.3/newlib/libc/string/strlen.c:71:
> first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `_etext':
> <built-in>(*ABS*+0x1009bc): multiple definition of `_etext'
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `__init':
> rtems-cpu.rel(.init+0x0): multiple definition of `_init'
> ../../../../../pmc694/lib/no-dpmem.rel(.init+0x0): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `__init':
> rtems-cpu.rel(.init+0x0): multiple definition of `__init'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.init+0x0):
> first
> defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function
> `__start_set_sysctl_set':
> rtems-cpu.rel(.text+0x960): multiple definition of
> `__start_set_sysctl_set'
> ../../../../../pmc694/lib/no-dpmem.rel(.text+0x100): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function
> `__stop_set_sysctl_set':
> <built-in>(*ABS*+0x100960): multiple definition of `__stop_set_sysctl_set'
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `__fini':
> rtems-cpu.rel(.fini+0x0): multiple definition of `_fini'
> ../../../../../pmc694/lib/no-dpmem.rel(.fini+0x0): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `__fini':
> rtems-cpu.rel(.fini+0x0): multiple definition of `__fini'
> /opt/rtems-4.6/lib/gcc-lib/powerpc-rtems/3.2.3/m603e/roe/ecrti.o(.fini+0x0):
> first
> defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `_edata':
> rtems-cpu.rel(.sdata+0x8): multiple definition of `_edata'
> ../../../../../pmc694/lib/no-dpmem.rel(.sdata+0x0): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `_end':
> rtems-cpu.rel(.bss+0x8004): multiple definition of `_end'
> ../../../../../pmc694/lib/no-dpmem.rel(.bss+0x8000): first defined here
> ../../../../../pmc694/lib/librtemsbsp.a(rtems-cpu.rel): In function `s.got':
> rtems-cpu.rel(.got+0x0): multiple definition of `s.got'
> ../../../../../pmc694/lib/no-dpmem.rel(.got+0x0): first defined here
> collect2: ld
> returned 1 exit status
> gmake[5]: *** [o-optimize/hello.exe] Error 1
> gmake[5]: Leaving directory
> `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests/samples/hello'
> gmake[4]: *** [all-recursive] Error 1
> gmake[4]: Leaving directory
> `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests/samples'
> gmake[3]: *** [all-recursive] Error 1
> gmake[3]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c/pmc694/tests'
> gmake[2]:
> *** [all-recursive] Error 1
> gmake[2]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c/pmc694'
> gmake[1]: ***
> [all-recursive] Error 1
> gmake[1]: Leaving directory `/shadi/rtems/bb/powerpc-rtems/c'
> gmake: *** [all-recursive] Error 1
> ----------------------------------------------------------------------
> 
> RAMiX provided a SDK which included the RTEMS 4.5, and one of the
> libraries was outside the source-tree; and this was causing the missing
> functions errors previously (but not anymore - since I added them to the
> lib).

That eliminated a lot :)

> It was mentioned before that the linkcmds file is generated automatically.
> Since I have the source, can I re-generate it again?

The linkcmds is not automatically generated.  There is something
wrong with the pmc one.  Compare it to the score version.

I don't know why the no-XXX.rel's are giving that error.  Can you
build the score603e BSP as a point of comparison?  If it does the
same thing, there is a toolset problem on your side.  If it is
different, then we need to compare the commands that generate
the no-XXX.rel files in the two BSPs' logs.

I think the .rel's are being linked incorrectly.

>>I went to Owego on a business trip years ago which meant I had to fly
>>into Binghamton.  Is the airport there still terribly small?
>>
>>--joel
> 
> 
> Yes, it is improved a little, but it is still quite small.

:)  I also remember a shampoo bottle rupturing in my luggage and
ruining all the media (QIC-150 tapes) I had with me. :(

> Thanks,
> 
> Shadi
> 


-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel at OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985




More information about the users mailing list