我正在Centos 7上构建二进制FOO
(使用glibc 2.14
),我希望它在Centos 6上运行(只有glibc 2.12
)
如果我在Centos 6系统上并行安装glibc 2.14
:
https://unix.stackexchange.com/questions/176489/how-to-update-glibc-to-2-14-in-centos-6-5#299665
那么我需要做些什么来运行FOO
并使用glibc 2.14
.so库?
设置LD_LIBRARY_PATH
有帮助吗?
答案 0 :(得分:1)
最简单的方法可能是从EPEL安装--
并构建一个CentOS 6 chroot。这假设您已将软件打包为RPM包。
理论上可以将glibc RPM解包到一个新的目录树(而不是mock
)中,并以这样的方式运行编译器和链接器,即使用这些文件而不是系统glibc。但是,我不认为CentOS 7工具链是使用sysroot支持构建的,所以这有点棘手。您可以从源代码构建glibc并查看它使用的编译器和链接器调用,因为它具有相同的问题(像/
这样的程序需要针对刚刚构建的glibc而不是已经安装的glibc进行编译)。