|
From: Julian S. <js...@ac...> - 2005-10-21 01:51:02
|
V is declining to read debug info from various .so's on various PPC distros. It complains, when reading the section headers, that one of the sections it's looking for (.plt, in this example) has an offset+size value which extends beyond the end of the file. And it's correct to do so: sewardj@minnie:~$ readelf -S /usr/lib/qt-3.3/plugins/styles/wonderland.so There are 28 section headers, starting at offset 0x156e4: Section Headers: [Nr] Name Type Addr Off Size ES Flg Lk Inf Al [...] [24] .plt NOBITS 00025618 0155f0 000918 00 WAX 0 0 4 Offset(0x0155f0) + Size(0x000918) = 0x15f08 = 89864, whilst the file size is only 88900. Also it's a bit strange that there are a four of sections that start at the same offset: [23] .sbss NOBITS 000255f0 0155f0 000028 00 WA 0 0 8 [24] .plt NOBITS 00025618 0155f0 000918 00 WAX 0 0 4 [25] .bss NOBITS 00025f30 0155f0 000000 00 WA 0 0 1 [26] .gnu_debuglink PROGBITS 00000000 0155f0 000018 00 0 0 4 Any ideas? This only happens for 1-in-10-ish .so's (very approximately). For the rest the debuginfo reader works fine. At first I thought it might be an endianness thing, but the fact that V's numbers agree with readelf's dissuaded me of that. J |