我有一个预编译的共享库,它需要 GLIBC-2.9 但我想将它用于 GLIBC-2.8。
我非常确定,源代码没有使用2.9中引入的任何功能
由于该库是闭源的,我无法下载源代码并根据所需的环境对其进行编译。
有什么方法可以在其他环境中使用预编译库吗?
答案1
您可以将该第三方库与 glibc-2.9 或更高版本的副本捆绑在一起。请注意,您可能必须包含更多的libc.so.6
、 likelibpthread
以及库或您的应用程序可能需要的任何其他 libc 组件以及动态链接器本身,并调用应用程序,如LD_LIBRARY_PATH=/path/to/where/those/are /path/to/newer/ld.so your-application
.
或者,您可以使用chroot
安装较新 libc 的位置(以及您的应用程序所需的一切)