基於Anaconda 安裝TensorFlow Linux-CPU版
環境要求:Centos7,Glibc2.16以上
centos7安裝bzip2 :yum install bzip2 node
一、安裝Anaconda(Python的運行環境)
下載Anaconda的地址:官網http://www.continuum.io/downloads/
也能夠在https://repo.continuum.io/archive/ 選擇相應的版本下載
這裏下載Anaconda3-4.2.0-Linux-x86_64.sh
二、進入Anaconda的下載目錄執行
bash Anaconda3-4.2.0-Linux-x86_64.shpython
三、安裝提示,直接回車下一步,選擇License文檔,按q鍵,最後yes確認
輸入anaconda的安裝路徑,直接回車是默認路徑
四、安裝完成以後配置環境變量,而後安裝Anaconda Python3.5環境
1)創建一個 conda 計算環境名字叫tensorflow:
$ conda create -n tensorflow python=3.5
2)激活tensorflow環境,而後使用其中的 pip 安裝 TensorFlow
$ source activate tensorflow
$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.0rc0-cp35-cp35m-linux_x86_64.whl
3)安裝成功後,每次使用 TensorFlow 的時候須要激活 conda 環境
當你不用 TensorFlow 的時候,關閉環境:
$ source deactivate
再次使用的時候再激活:
$ source activate tensorflow
五、運行TensorFlow
打開一個python終端 :
$ python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session()
>>> print sess.run(hello)
Hello, TensorFlow!
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> print sess.run(a+b)
42
>>>
Windows版本安裝:
一、安裝anaconda
二、如果Anaconda3-4.2.0 則自帶了python3.5 ,pip要求是9.0以上
三、直接執行pip install tensorflow 如果socket報錯,則重試兩次就行了
四、而後,就沒有而後了,安裝完成linux
==========================================c++
如果出現報錯以下狀況:centos
import tensorflow as tf 問題報錯:
ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.19' not found
(required by /root/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow.so)api
1)檢查了gcc版本:gcc --version ;
[root@hadoop-namenode-01 lib]# gcc --version
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-17)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.bash
2)$ strings /usr/lib64/libstdc++.so.6 |grep GLIBCXX 獲得結果:
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_LENGTHsocket
3) $ find / -name libstdc++.so.6*
/root/anaconda3/lib/libstdc++.so.6
/root/anaconda3/lib/libstdc++.so.6.0.19
/root/anaconda3/pkgs/libgcc-4.8.5-2/lib/libstdc++.so.6
/root/anaconda3/pkgs/libgcc-4.8.5-2/lib/libstdc++.so.6.0.19
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.13
能夠看到,已經有libstdc++.so.6.0.19oop
4) $ ls -al /usr/lib64/libstdc++.so.6
lrwxrwxrwx. 1 root root 19 Feb 24 03:21 /usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.13
說明雖然gcc已經更新到最新版,可是鏈接仍是舊版本,因此只須要修改鏈接就能夠了 ui
解決方案步驟:
1) cp /root/anaconda3/lib/libstdc++.so.6.0.19 /usr/lib64
2) rm -rf /usr/lib64/libstdc++.so.6
3) ln -s /usr/lib64/libstdc++.so.6.0.19 /usr/lib64/libstdc++.so.6
報錯2:ImportError: /lib64/libc.so.6: version `GLIBC_2.16' not found (required by /root/anaconda3/envs/tensorflow/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow.so) 歸根結底問題:因爲Linux內核不支持,版本過低!!!!