Re: libstdc++.so without version information

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Philipp Thomas wrote:
On Wed, 25 Nov 2009 11:40:25 +0100, Christian Schaubschlaeger wrote:

root:# objdump -p libstdc++.so.6.0.8

libstdc++.so.6.0.8:     file format elf32-i386

ldconfig did find the library, but could not extract the version info
(regarding CXXABI and GLIBCXX), since it's obviously not there. And
I don't know why.

If there is no version info, you'll have to examine the build log of
your gcc (or start a new build and log that) and search for the
line(s) where libstdc+ is itself linked. I haven't looked at gcc
makefiles for a long time but ld should be passed a version script
that contains the versioning info ld will then put into the library.
Examining the 'libstdc++-v3/config.log' alone would tell the possible reason. My (re)build of cross-gcc-4.1.2 for SuSE 10.3 (no version info there earlier) told in the $target/libstdc++-v3/config.log :

configure:87446: WARNING: === Linker version 1750 is too old for
configure:87448: WARNING: === full symbol versioning support in this release of GCC. configure:87450: WARNING: === You would need to upgrade your binutils to version
configure:87452: WARNING: === 21400 or later and rebuild GCC.
configure:87454: WARNING: === Symbol versioning will be disabled.

The case really was that the earlier buggy gcc-4.1.2 toolchain had the :

[root@Dell i686-suse-linux10.3]# bin/ld -V
GNU ld (Linux/GNU Binutils) 2.17.50.0.16.20070511
Supported emulations:
 elf_i386
 i386linux

Earlier there were no dot but a space between the version string and the date string. Downgrading the target binutils to 2.15.94 was my first workaround and with them the version info was added. Also the more uptodate binutils like 2.19.51 have this dot there so either it should be fixed away in the binutils sources or the gcc-4.1.2/libstdc++-v3/configure* stuff be fixed to accept the dot and interpret the binutils version right... The newer GCCs seem to interpret this ok so looking at
the diffs could tell the patch....


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux