文件下载

首先,下载想要安装的版本,目前最新的是1.8.0 根据你的python版本下载对应的whl文件,下载连接:https://pypi.org/project/tensorflow/#files。也可以下载历史版本:https://pypi.org/project/tensorflow/#history

尝试安装

pip install xxxxxx.whl
会提示依赖的文件不存在。接着通过能上网的机子百度去下载对应版本号的文件继续安装。

 
 

经过一系列的下载之后,tensorflow 安装需要以下依赖文件,通通装上。

 
 

最终能够成功安装tensorflow 。
如果运行如下命令不报错的情况下,恭喜你,安装成功。

python
>>> import tensorflow as tf

如果linux 系统原先没有安装过高版本的gcc,一般都会提示如下错误

ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.17' not found
(required by /usr/local/lib/python2.7/dist-
packages/tensorflow/python/_pywrap_tensorflow.so)

`GLIBC_2.17' 没找到。
采用如下命令查看当前系统支持的glibc版本

[root@localhost glibc]# 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

更新glibc版本,下载地址:http://ftp.gnu.org/gnu/glibc/glibc-2.17.tar.gz
执行以下步骤安装glibc

[xxx]# tar -xf glibc-2.17.tar.gz
[xxx]# cd glibc-2.17
[xxx]# mkdir build
[xxx]# cd build
[xxx]# ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
[xxx]# make -j 8
[xxx]# make install

重新查看会发现,glibc的版本已经添加上去:

[root@localhost glibc]# 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

查看映射:

[root@localhost glibc]# ll /lib64/libc.so.6
lrwxrwxrwx 1 root root 12 May 7 16:31 /lib64/libc.so.6 -> libc-2.17.so

此时,libc.so.6已经映射到了libc-2.17.so。如果不是要删除映射重新建立映射。

[xxx]# rm /lib64/libc.so.6
[xxx]# ln -s /lib64/libc-2.17.so /lib64/libc.so.6

这里需要注意的是,一旦/lib64/libc.so.6文件被删除ll,ls,ln 这些命令将无法使用。报如下错误:

error while loading shared libraries: libc.so.6: cannot open shared object file:
No such file or directory
采用以下命令进行急救:
[xxx]# ldconfig

继续尝试

>>> import tensorflow as tf

会报如下错误

ImportError: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found

查看已有的版本

[xxx]# ll /usr/lib64/libstdc++.so.6
lrwxrwxrwx 1 root root 19 May 7 17:58 /usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.13
[xxx]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3
CXXABI_1.3.4
CXXABI_1.3.5
CXXABI_1.3.6
CXXABI_TM_1
CXXABI_FLOAT128

一般安装anaconda3 会有高版本的libstdc++.so.6存在。磁盘搜索

[xxx]# find / -name "libstdc++.so.*"
/root/anaconda3/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6
/root/anaconda3/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6.0.24
/root/anaconda3/lib/libstdc++.so.6
/root/anaconda3/lib/libstdc++.so.6.0.24
/root/anaconda3/pkgs/libstdcxx-ng-7.2.0-h7a57d05_2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6
/root/anaconda3/pkgs/libstdcxx-ng-7.2.0-h7a57d05_2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libstdc++.so.6.0.24
/root/anaconda3/pkgs/libstdcxx-ng-7.2.0-h7a57d05_2/lib/libstdc++.so.6
/root/anaconda3/pkgs/libstdcxx-ng-7.2.0-h7a57d05_2/lib/libstdc++.so.6.0.24

复制对应的版本到/usr/lib64/目录下

cp /root/anaconda3/lib/libstdc++.so.6.0.24  /usr/lib64/

同样修改软连接关系

[xxx]# rm /usr/lib64/libstdc++.so.6
[xxx]# ln -s /usr/lib64/libstdc++.so.6.0.24 /usr/lib64/libstdc++.so.6

这个问题也解决了,那能够成功导入吗?不要高兴的太早,有些同学可能会遇到如下问题:

>>>import tensorflow as tf
illegal instruction (core dumped)

各种查阅资料后发现官网上的安装方式和自家的CPU不匹配,需要从source安装。泪崩...
需要简单处理的同学可以尝试降低tensorflow的版本,如安装1.5.0版本,1.5.1同样会报illegal instruction (core dumped) 亲测。

 
 
参考资料:

glibc2.17安装: https://blog.csdn.net/wyl9527/article/details/78256066
linux文件删除急救:https://blog.csdn.net/xzx735/article/details/43227203
tensorflow 源码安装:https://blog.csdn.net/helei001/article/details/51285951
illegal instruction错误解决 https://blog.csdn.net/darklucky/article/details/79947048

作者:IT屌丝逆袭日记
链接:https://www.jianshu.com/p/36e547419c96
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

Linux(Red hat)无网离线安装TensorFlow的更多相关文章

  1. Linux Red Hat 8.0虚拟机安装过程

    Linux Red Hat 8.0虚拟机安装过程 一.安装虚拟机所需要的工具: 1.VMware Workstation Pro 2.Red Hat 8.0 虚拟机镜像 3.还有一个就是VMware的 ...

  2. Linux red hat 核心版下安装Nginx

    不要安装核心版的Linux,不要安装核心版的Linux,不要安装核心版的Linux重要的事情要说3遍.心血来潮突然想在Linux下安装Nginx,但是在安装的国程中发现了很多问题.nginx 基本安装 ...

  3. Informatica9.6.1在Linux Red Hat 5.8上安装遇到的有关问题整理_1

    1.  产品安装过程中提示无法创建Domain([ICMD_10033] Command [defineDomain] failed with error [[INFASETUP_10002]) 1) ...

  4. Informatica9.6.1在Linux Red Hat 5.8上安装遇到的有关问题整理_2

    2. 产品安装过程提示Ping Domain Error 1)错误日志: Pinging domain... 8:19:22 AM ********************************** ...

  5. Informatica9.6.1在Linux Red Hat 5.8上安装遇到的有关问题整理_3

    3.Repository Service启动后的页面编码问题 1)错误信息: 2)原因分析及解决步骤 原因分析: informatica产品安装背后AdminConsole的Code page默认为U ...

  6. Informatica9.6.1在Linux Red Hat 5.8上安装遇到的有关问题整理_4

    4.创建Integration Service后无法启动 1)错误日志: 2)解决办法: 进入Repository Service的属性页面,将其运行模式改成Normal.

  7. Red Hat Enterprise Linux7的安装与oracle 12c的安装

    Red Hat Enterprise Linux7的安装与oracle 12c的安装 本文档中用到的所有参数均位于文末附录 Red Hat Enterprise Linux7的安装 新建完虚拟机后,挂 ...

  8. Python3 离线安装TensorFlow包

    Python3 离线安装TensorFlow包 1,下载包 官网地址:https://pypi.org/project/tensorflow/1.1.0rc2/#files 清华镜像:https:// ...

  9. 无网环境安装docker之--rpm

    总体思路:找一台可以联网的linux,下载docker的RPM依赖包而不进行安装(yum localinstall),将所有依赖的rpm环境打包好,再在无网环境中解压逐一安装(rpm:  --forc ...

随机推荐

  1. PHP SHA1withRSA加密生成签名及验签

    最近公司对接XX第三方支付平台的代付业务,由于对方公司只有JAVA的demo,所以只能根据文档自己整合PHP的签名加密,网上找过几个方法,踩到各种各样的坑,还好最后算是搞定了,话不多说,代码分享出来. ...

  2. PHPCMS v9 手机版如何设置独立域名

    一.在PHPcms V9管理后台设置手机门户(目前phpcms v9 版本为V9.6.3) 1.1.开启手机网站.位置:模块 >手机门户 > 添加手机站点,具体设置可参照截图: 填写站点名 ...

  3. UWP Test Webview JS interact, new window open (新窗口打开)

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Run ...

  4. 20155301 滕树晨linux基础——linux进程间通信(IPC)机制总结

    20155301 滕树晨linux基础--linux进程间通信(IPC)机制总结 共享内存 共享内存是在多个进程之间共享内存区域的一种进程间的通信方式,由IPC为进程创建的一个特殊地址范围,它将出现在 ...

  5. linux 问题收集

    1,错误信息:bunzip2: command not found 解决方法:yum install -y bzip2 2,The X11 forwarding request was rejecte ...

  6. 【日常训练】Help Far Away Kingdom(Codeforces 99A)

    题意与分析 题意很简单,但是注意到小数可能有一千位,作为一周java选手的我选择了java解决. 这里的分析会归纳一些必要的Java API:(待补) 代码 /* * ACM Code => c ...

  7. PageHelper分页插件使用

    mybatis的分页插件jar包: 配置方法: 在mybatis配置文件中加下面代码 <plugin interceptor="com.github.pagehelper.PageIn ...

  8. 背景颜色 - bootStrap4常用CSS笔记

    .bg-primary 重要的背景颜色 .bg-success 执行成功背景颜色 .bg-info 信息提示背景颜色 .bg-warning 警告背景颜色 .bg-danger 危险背景颜色 .bg- ...

  9. Netty源码分析第2章(NioEventLoop)---->第7节: 处理IO事件

    Netty源码分析第二章: NioEventLoop   第七节:处理IO事件 上一小节我们了解了执行select()操作的相关逻辑, 这一小节我们继续学习select()之后, 轮询到io事件的相关 ...

  10. Python-RabbitMQ(简单发送模型)

    RabbitMQ需要 erlang 和pika 1.RabbitMQ和erlang版本必须匹配,否则就报没有进程错误 2.RabbitMQ的erlang.cookie和windows下的erlang. ...