在Redhat 6.8上将glibc 2.12升级到2.14以使用Tensorflow和Python

时间:2017-07-31 20:32:23

标签: python tensorflow glibc

我们的服务器在Redhat 6.8上运行并安装了Anaconda Python 3.6.1。

我们尝试导入python模块:Keras / Tensorflow,发现我们需要将Glibc从2.12升级到2.14才能使其正常工作。

我们根据此链接How to upgrade glibc from version 2.12 to 2.14 on CentOS?

的说明下载并安装Glibc 2.14作为单独安装

然后我们尝试在Python python解释器中导入Keras模块,它给我们错误“Segmentation fault(core dumped)”错误并踢回OS命令提示符。在我们安装Glibc 2.14之前,它给我们一个错误,找不到Glibc 2.14。

这是我们从一开始就安装Tensorflow的链接。 https://www.tensorflow.org/install/install_linux#InstallingAnaconda

任何人都知道如何解决这个问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

您链接的答案不正确。您可以安装第二个glibc,但仍应使用--prefix=/usr进行编译(并使用DESTDIR安装它),并且必须使用显式链接器调用运行所有程序,类似于{{1构建根目录中的脚本。对于第一次试用,您可以直接使用testrun.sh运行程序二进制文件,甚至不用将glibc安装到目标目录。

glibc wiki有testing instructions。这些适用于使用新构建(但未安装)的glibc运行您自己的应用程序。

如果仅使用testrun.sh,则会出现随机崩溃,因为动态链接器和库的其余部分不匹配。关于LD_LIBRARY_PATH方法有一些警告,因为它不提供完全隔离,但它通常会给出相当不错的结果。但是,与testrun.sh方法不同,它不会自动扩展到在其他glibc下运行的进程启动的所有子程序。

请注意,在这种情况下升级到Red Hat Enterprise Linux 7可能更容易(它提供了开箱即用的glibc 2.17)。