我们的服务器在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
任何人都知道如何解决这个问题?
谢谢!
答案 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)。