【问题标题】:Installing Tensorflow on centos 5在 centos 5 上安装 TensorFlow
【发布时间】:2016-05-03 09:37:09
【问题描述】:

我正在尝试在 Centos 5 上安装 Tensorflow。 不幸的是,在按照官方文档中的说明使用 pip 安装后

sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl

当我尝试在 python shell 上导入 tensorflow 时出现以下错误

导入错误: /home/users/caohao/.jumbo/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so: ELF 文件操作系统 ABI 无效

github上的以下问题给了我一个线索: https://github.com/tensorflow/tensorflow/issues/350

其实tensorflow要求glibc版本至少为2.17

当我输入时

ldd --version

我有以下输出:

ldd (GNU libc) 2.5

所以我需要升级 glibc。 我想执行“并行”安装,因为升级 glibc 可能对我的机器很危险 于是我下载了源码,并使用了命令

../glibc-2.18/configure --prefix=/opt/glibc-2.18

安装到其他目​​录

问题是我启动配置时出现以下错误

配置:错误:汇编器太旧,缺少 .cfi_personality 支持

我想我也必须更新 binutils,所以我下载了源并将其安装在 /opt/binutils-2.26/ 中,以免损坏系统。

但我在尝试配置 glibc 时仍然遇到同样的错误。

这是我的问题:

如何指定要使用哪个版本的 binutils 来构建 glibc?

编辑:我应该有 RTFM,答案是使用“--with-binutils=directory”选项

当 tensorflow 安装在 /opt/glibc-2.18 中时,如何让 tensorflow 寻找好版本的 glibc?

仅供参考,我使用 python 2.7.11

非常感谢您的问候

【问题讨论】:

    标签: python centos glibc tensorflow binutils


    【解决方案1】:

    我也有同样的问题。

    但我使用的是 CentOS 6.5,而我的 GLIBC(GNU libc) 版本是 2.12。

    我尝试通过删除 2.12 版本并安装 2.17 手动更改我的 GLIBC 版本。

    它的依赖出现了很多问题,无法导入TensorFlow。

    所以,我使用了 CentOS 7.0,它具有默认的 GLIBC 版本 2.17。

    我可以使用 CentOS 7.0 毫无问题地安装和运行 TensorFlow。

    谢谢。

    【讨论】:

      【解决方案2】:

      我认为 tensorflow 完全需要 GLIB 2.17 而不是 2.18。 由于某种原因,它被硬编码了。

      另请参阅: Error while importing Tensorflow in python2.7 in Ubuntu 12.04. 'GLIBC_2.17 not found'

      【讨论】:

      • 谢谢,无论如何我认为 CentOS 5.6 对于运行 Tensorflow 来说太旧了,我更新了一半的 GNU 库来编译 GLIBC 2.17(GCC、GMP、MPFR、MPC...),现在看来linux内核太老了……
      猜你喜欢
      • 2016-08-20
      • 2011-10-26
      • 2014-04-12
      • 1970-01-01
      • 2017-03-26
      • 2015-10-21
      • 1970-01-01
      • 1970-01-01
      • 2020-02-05
      相关资源
      最近更新 更多