[置顶] Centos6.5之pip安装tensorflow

云计算 waitig 550℃ 百度已收录 0评论
tensorflow,简言之:是Google开源出来的第二代机器学习的框架平台。

现版本的tensorflow基本只支持python2.7以上和python3。我这里用的是python2.7.6,安装完成是个曲折的过程,遇到很多坑,这里写成博客,仅做参考。

软件和组件版本:
Python https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
pip pip-9.0.1.tar.gz
setuptools https://pypi.python.org/pypi/setuptools#downloads
tensorflow http://pan.baidu.com/s/1dFmejUL
glibc http://ftp.gnu.org/pub/gnu/glibc/glibc-2.17.tar.xz
libstdc++ http://pan.baidu.com/s/1nv8i4ul
libstdc++.so http://pan.baidu.com/s/1geITRgB

(1)开始环境的一些得必须装好:
yum install gcc gcc-c++ make python-devel openssl openssl-devel glibc-headers zlib-devel bzip2-devel ncurses-devel sqlite-devel readline-devel
tk-devel

(2)Python安装
Centos6.5自带是python2.6.6,这里我们再安装python2.7.6来替代它
下载并解压python:

wget https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz
tar -zxvf Python-2.7.6.tgz

进入到python目录:

cd Python-2.7.6
./configure --prefix=/usr/local --enable-unicode=ucs4(这里很重要)
make && make all && make install

建立软链接,是系统默认的python指向python2.7.6

mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/bin/python2.7 /usr/bin/python

解决完系统默认的指向后,因为此时的yum不兼容python2.7,不能正常工作,我们需指定yum的Python版本:

vi /usr/bin/yum

这里写图片描述
把注释开头的/usr/bin/python后面加上2.6.6就ok了

修改Python2.7.6下面的Modules/Setup文件
定位到文件454行左右的这一行:将前面的注释去掉

#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

重新编译python

make && make install

(3)pip安装

tar -zxvf pip-9.0.1.tar.gz

进入到pip目录下

python setup.py install

这时会报错:No Module named setuptools

(4)安装setuptools

tar -zxvf setuptools-3.6.tar.gz
cd setuptool-3.6
python setup.py build
python setup.py install

然后再进入到pip目录下:python setup.py install

(5) 安装tensorflow
下载tensorflow-0.5.0-cp27-none-linux_x86_64.whl并运行以下命令:

pip install tensorflow-0.5.0-cp27-none-linux_x86_64.whl

接着:

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

(6) 升级glibc

tar -zxvf glibc-2.17.tar.gz
cd glibc-2.17
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make && make install

查看已更新内容:
这里写图片描述

下载libstdc++6_4.7.2-5_amd64.deb ,并执行操作:

ar -x libstdc++6_4.7.2-5_amd64.deb&&tar xvf data.tar.gz
cd /root/usr/lib/x86_64-linux-gnu
mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6.bak
cp libstdc++.so.6.0.17 /usr/lib64/
cd /usr/lib64
chmod +x libstdc++.so.6.0.17
ln -s libstdc++.so.6.0.17 libstdc++.so.6

在查看更新:
这里写图片描述

下载libstdc++.so.6.0.20 ,并放入/usr/lib64目录下 并进行如下操作:

cd /usr/lib64
chmod +x libstdc++.so.6.0.20
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.20 libstdc++.so.6

这里写图片描述

(7)进行测试

vi test.py

代码:

import tensorflow as tf
hello = tf.constant('Hello,hejiamian!')
sess = tf.Session()
print sess.run(hello)
a = tf.constant(10)
b = tf.constant(333)
print sess.run(a+b)
python test.py

运行结果:
[root@db3 ~]# python test.py
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 1
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 1
Hello,hejiamian!
343

(8)大功告成


本文由【waitig】发表在等英博客
本文固定链接:[置顶] Centos6.5之pip安装tensorflow
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)