这项工作相当艰难,其中有无数神坑。
我先将最终验证成功的流程记录如下:
1.配置DNS:
echo "nameserver 114.114.114.114" > /etc/resolv.conf
2.安装Anaconda3(python3.6版本)
cd /home
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.3.1-Linux-x86_64.sh
bash Anaconda3-4.3.1-Linux-x86_64.sh
3.手工添加PATH变量
echo "export PATH=$PATH:/root/anaconda3/bin" > /etc/profile
4.刷新环境变量
source /etc/profile
5.安装setuptools for py3
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
tar -zxvf setuptools-19.6.tar.gz
cd setuptools-19.6
python3 setup.py build
python3 setup.py install
6.安装pip3
说明:直接安装9.0.1貌似会出错。
wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
tar -zxvf pip-8.0.2.tar.gz
cd pip-8.0.2
python3 setup.py build
python3 setup.py install
wget --no-check-certificate https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9
tar -zxvf pip-9.0.1.tar.gz
cd pip-9.0.1
python3 setup.py build
python3 setup.py install
7.安装tensorflow 1.2.0
pip3 install https://pypi.python.org/packages/9c/9b/c20aab2499ad42b4f473bb17749bbb42dc797a2b083c86dce6abb90111f3/tensorflow-1.2.0rc1-cp36-cp36m-manylinux1_x86_64.whl#md5=fecda7af7028e73871840c917d1d52a8
可能出现的其他问题:
1.报错GLIBC版本不够:安装新GLIBC版本(说明,直接拷贝新版本文件是不行的,会导致错误3)
ImportError:/lib64/libc.so.6: version `GLIBC_2.17’ not found (required by/usr/local/python2.7/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow.so)
wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.17.tar.xz
xz -d glibc-2.17.tar.xz
tar -xvf glibc-2.17.tar
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
2.如果用其他方法导致BASH下大量命令不可用
ls: error while loading shared libraries: __vdso_time: invalid mode for dlopen(): Invalid argument
echo "include ld.so.conf.d/*.conf" > /etc/ld.so.conf
即可继续执行命令
export LD_LIBRARY_PATH=/usr/lib:/usr/lib64:/lib:/lib64:/usr/local/lib:/usr/local/lib64:$LD_LIBRARY_PATH
修改/etc/ld.so.conf为原来的内容
执行ldconfig,恢复正常
3.如果试图修改libc.so.6的链接,也将导致ls等命令不可用。
/bin/ls: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory
使用预加载的方式使用libc-2.12.so(老版本)来重建软连接
LD_PRELOAD=/lib64/libc-2.12.so ln -s libc-2.12.so libc.so.6
4.可能出现的protobuf问题:
http://blog.csdn.net/xiexievv/article/details/47396725
其他参考链接:
http://www.cnblogs.com/maydow/p/5295065.html
http://blog.csdn.net/levy_cui/article/details/51251095
http://blog.csdn.net/cpplang/article/details/8462768/
http://blog.csdn.net/abcd1f2/article/details/49777715
http://devzc.com/post/440