Motorola Shared BSPs not Linking

Sebastian Huber sebastian.huber at embedded-brains.de
Mon Apr 23 09:57:04 UTC 2012


On 04/23/2012 11:27 AM, Sebastian Huber wrote:
> I think this is a bug in ld introduced with 2.22.  We have this command line:
>
> powerpc-rtems4.11-ld -o hello.ralf ../../../../../mcp750/lib/bootloader.o
> --just-symbols=hello.exe -b binary rtems.gz -T
> ../../../../../mcp750/lib/ppcboot.lds -Map hello.map
> ../../../../../mcp750/lib/ppcboot.lds:97: undefined symbol `__rtems_start'
> referenced in expression
>
> This "__rtems_start" is defined in "hello.exe" (defined in "vectors_entry.S").
>   If I change "__rtems_start" to "boot_card" it get also  this error.  If I
> change it to "memcpy" the error disappears.  With older Binutils all versions
> work.

After using this shell script:

rm -f log.txt
for i in `nm -g hello.exe | awk '/ T / {print $3}'` ; do
   sed s%__rtems_start%$i% < ../../../../../mcp750/lib/ppcboot.lds > ppcboot.lds.$i
   if powerpc-rtems4.11-ld -o hello.ralf ../../../../../mcp750/lib/bootloader.o 
--just-symbols=hello.exe -b binary rtems.gz -T ppcboot.lds.$i -Map hello.map ; then
     echo good $i >> log.txt
   else
     echo bad $i >> log.txt
   fi
done

it seems to be completely random which symbols are undefined and which are defined.

-- 
Sebastian Huber, embedded brains GmbH

Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
Phone   : +49 89 18 90 80 79-6
Fax     : +49 89 18 90 80 79-9
E-Mail  : sebastian.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the users mailing list