[oi-dev] gcc 4.8 update and binary compatibility
Alexander Pyhalov
alp at rsu.ru
Mon Jun 30 08:02:12 UTC 2014
Hello.
I'm looking at adding gcc 4.8 package.
I have a big question about g++-4-runtime package.
For example, OmniOS g++-4-runtime includes
/usr/lib/libstdc++.so.6.0.18
/usr/lib/libstdc++.so.6.0.17
and so on.
But if we look, for example, at percona:
$ ldd /usr/percona-server/5.6/bin/mysql
libthread.so.1 => /lib/libthread.so.1
libsocket.so.1 => /lib/libsocket.so.1
libssl.so.1.0.0 => /lib/libssl.so.1.0.0
libcrypto.so.1.0.0 => /lib/libcrypto.so.1.0.0
libcurses.so.1 => /lib/libcurses.so.1
libstdc++.so.6 => /usr/lib/libstdc++.so.6
libm.so.2 => /lib/libm.so.2
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1
libc.so.1 => /lib/libc.so.1
libnsl.so.1 => /lib/libnsl.so.1
libdl.so.1 => /lib/libdl.so.1
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
we can see that it is linked to libstdc++.so.6. So, if we update link,
runtime linker will load binary incompatible library.
Are there any ideas how to preserve binary compatibility on this update?
Or perhaps we should apply gcc-05-LINK_LIBGCC_SPEC-46.diff patch and
avoid providing runtimes for gcc in /usr/lib ?
--
Best regards,
Alexander Pyhalov,
system administrator of Computer Center of Southern Federal University
More information about the oi-dev
mailing list