centos 6.x 上 安装tensorflow 1.3 的一些问题总结

本文介绍了解决dotnet运行时缺失特定版本的libstdc++.so.6及TensorFlow因glibc版本过低导致的导入错误的方法。通过更新对应的动态库版本,确保了应用程序的正常运行。
部署运行你感兴趣的模型镜像

问题1:

dotnet: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.18' not found (required by dotnet)
dotnet: /usr/lib64/libstdc++.so.6: version
CXXABI_1.3.5’ not found (required by dotnet)
dotnet: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.14' not found (required by dotnet)
dotnet: /usr/lib64/libstdc++.so.6: version
GLIBCXX_3.4.15’ not found (required by dotnet)

运行以下命令检查动态库:
strings /usr/lib64/libstdc++.so.6 | grep GLIBC
输出结果如下:

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

解决办法:

下载新版本:http://ftp.de.debian.org/debian/pool/main/g/

下载下来之后,用如下命令开始解压

ar -x libstdc++6_7-20170302-1_i386.deb

tar xvf data.tar.xz

将上面的最新动态库(lib/i386-linux-gnu)libstdc++.so.6.0.23复制到/usr/lib64目录下,

cp libstdc++.so.6.0.23 /usr/lib64

切换工作目录至/usr/lib64:

cd /usr/lib64

删除原来软连接:

rm -rf libstdc++.so.6
将默认库的软连接指向最新动态库:

ln -s libstdc++.so.6.0.23 libstdc++.so.6
默认动态库升级完成。重新运行以下命令检查动态库:

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBC_2.0
GLIBC_2.3
GLIBC_2.18
GLIBC_2.16
GLIBC_2.1
GLIBC_2.17
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2
GLIBCXX_DEBUG_MESSAGE_LENGTH

问题2:

python里import tensorflow时,报 “ImportError: /lib64/libc.so.6: version `GLIBC_2.17’ not found (required by /usr/local/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so)”

主要是glibc的版本太低,默认的CentOS 6.5 glibc版本最高为2.12,
执行: strings /lib64/libc.so.6|grep GLIBC 查看目前系统支持的glibc的版本
[root@zhx-tserver2 build-2.17]# strings /lib64/libc.so.6|grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

tensorflow需要glibc-2.17,需要升级glibc

1)下载glibc2.17:
wget http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz

2)解压:
tar -xzf glibc-2.17.tar.gz

3)创建build目录:
mkdir build

4)进入build目录编译glibc:
cd build
../glibc-2.17/configure –prefix=/usr –disable-profile –enable-add-ons –with-headers=/usr/include –with-binutils=/usr/bin
make -j4
make install

5)查看GLIBC版本
执行 strings /lib64/libc.so.6|grep GLIBC 查看版本已经支持GLIBC_2.17
[root@zhx-tserver2 build-2.17]# strings /lib64/libc.so.6|grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_2.16
GLIBC_2.17
GLIBC_PRIVATE

原文链接:
https://blog.youkuaiyun.com/qq708986022/article/details/77896791
https://blog.youkuaiyun.com/dream_ll/article/details/61917252

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值