tags:

views:

299

answers:

2

I have a linux shared library (.so) compiled with a specific version of libc (GLIBC2.4) and I need to use it on a system with different version of libc. I do not have sources for the library in question so I cannot recompile for the new system. Is it somehow possible to change the dependencies in that library to a different libc?

A: 

Best you can do is compile the old glibc version for your system and then build your application with that glibc and your shared library. Ugly though ...

+1  A: 

If you need the .so on a system with an older glibc, you would need the source code and recompile/relink it with the older glibc. The alternative is to install the required glibc on the old system in a non-default location and adjust the LD_LIBRARY_PATH for the executable that needs this .so

If there's a newer glibc rather, it should normally not be a problem as glibc tend to be backwards compatible.

nos