Hi, qemu-system-arm -no-reboot -net none -nographic -M realview-pbx-a9 -m 256M -kernel `find . -name dl01.exe` -s -S
*** BEGIN OF TEST libdl (RTL) Loader 1 *** load: /dl-o1.o rtl: unsupported section: 15: type=1879048195 flags=00 handle: 0x212b10 has unresolved externals dl-o1.o can not be correctly loaded, because of unresolved symbols. I do some debug using remote gdb and found it is the reloc entry references local symbols named "LCx" saying "LC0", "LC1", "LC2". Freenix@linux-jyl1:~/per/new/build-arm> arm-rtems4.11-readelf -s `find . -name dl-o1.o` Symbol table '.symtab' contains 22 entries: Num: Value Size Type Bind Vis Ndx Name 0: 00000000 0 NOTYPE LOCAL DEFAULT UND 1: 00000000 0 FILE LOCAL DEFAULT ABS dl-o1.c 2: 00000000 0 SECTION LOCAL DEFAULT 1 3: 00000000 0 SECTION LOCAL DEFAULT 3 4: 00000000 0 SECTION LOCAL DEFAULT 4 5: 00000000 0 SECTION LOCAL DEFAULT 5 6: 00000000 0 NOTYPE LOCAL DEFAULT 5 $d * 7: 00000000 0 NOTYPE LOCAL DEFAULT 5 .LC0* * 8: 00000020 0 NOTYPE LOCAL DEFAULT 5 .LC1* * 9: 00000068 0 NOTYPE LOCAL DEFAULT 5 .LC2* 10: 00000000 0 NOTYPE LOCAL DEFAULT 1 $t 11: 00000000 0 SECTION LOCAL DEFAULT 6 12: 00000000 0 SECTION LOCAL DEFAULT 8 13: 00000000 0 SECTION LOCAL DEFAULT 9 14: 00000000 0 SECTION LOCAL DEFAULT 11 15: 00000000 0 SECTION LOCAL DEFAULT 13 16: 00000010 0 NOTYPE LOCAL DEFAULT 16 $d 17: 00000000 0 SECTION LOCAL DEFAULT 16 18: 00000000 0 SECTION LOCAL DEFAULT 14 19: 00000000 0 SECTION LOCAL DEFAULT 15 20: 00000001 88 FUNC GLOBAL DEFAULT 1 rtems_main 21: 00000000 0 NOTYPE GLOBAL DEFAULT UND printf The LCx symbols's type is NOTYPE and not included in the rtl symbol table(local symbol may should not be included). In rtl-elf.c, line 387 see following, the LCx symbols are not included, so fails. I prefer that if unresolved symbols detected in rtl, detailed info should be print out, but i found no debug msg about this. 384 /* 385 * Only keep the functions and global or weak symbols. 386 */ 387 if ((ELF_ST_TYPE (symbol.st_info) == STT_OBJECT) || 388 (ELF_ST_TYPE (symbol.st_info) == STT_FUNC)) I think this cause arm load failed. FYI, rap file are not included in the dl test? Regards, Peng.
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel