問題解決筆記 -- Ubuntu 安裝 tensorflow與問題解決筆記
1.以Python 2.7 ,Ubuntu14.04為基礎環境
# Ubuntu/Linux 64-bit, CPU only, Python 2.7:
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7. Requires CUDA toolkit 7.5 and CuDNN v4. 使用GPU加速,需安裝CUDA及CuDNN
# For other versions, see "Install from sources" below.
$ sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
筆者 使用的tensorflow包是包含GPU enabled的,所以以下是安裝過程中出現問題的相應筆記
選擇deb(local)包或deb(network)包
將包傳至Ubuntu,到相應目錄下執行以下命令
sudo dpkg -i 下載後相應的deb包名.deb
sudo apt-get update
sudo apt-get install cuda
等待完成安裝
下載並安裝 CUDNN Toolkit 6.5
百度搜索相應的包 cudnn-6.5-linux-x64-v2.tgz 下載
解壓並拷貝 CUDNN 檔案到 Cuda Toolkit 安裝路徑下. 假設 Cuda Toolkit 安裝 在 /usr/local/cuda, 執行以下命令:
tar xvzf cudnn-6.5-linux-x64-v2.tgz
sudo cp cudnn-6.5-linux-x64-v2/cudnn.h /usr/local/cuda/include
sudo cp cudnn- 6.5-linux-x64-v2/libcudnn* /usr/local/cuda/lib64
sudo vim ~/.bashrc 開啟“./bashrc”檔案,然後
在開啟的檔案的末尾新增如下程式碼並儲存:
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64"
export CUDA_HOME=/usr/local/cuda
注: cuda預設安裝在/usr/local/cuda資料夾下
2 . 錯誤處理
輸入tensorflow測試程式碼後:
若出現了libcudart.so.7.5: cannot open shared object file: No such file or directory的錯誤:
解決方法,以cuda-8.0 為例
由於是版本問題,於是建立相應的軟連結
ln -s /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/lib
ln -s /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/lib/libcudart.so.7.5
sudo ldconfig
若出現相應的CUDNN錯誤,則可能是CUDNN未安裝,按照上面的步驟進行拷貝
3 . tensorflow測試程式碼
$ 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
4 . 其他操作
4.1 要是升級相應的CUDNN檔案後,要刪除舊版本釋放空間,使用命令
apt-get autoremove
4.2 假如要在/usr/local目錄下建立軟連結,如使得cuda連結到cuda-8.0
可執行以下命令(慎用)
# rm -rf cuda
# ln -s cuda-8.0 cuda
# ldconfig /usr/local/cuda/lib64
記得加上ldconfig,否則可能導致錯誤 error while loading shared libraries
4.3 刪除tensorflow
sudo pip uninstall tensorflow
4.4 刪除cuda
到相應的版本目錄下,以7.5為例
sudo /usr/local/cuda-7.5/bin/uninstall_cuda-7.5.pl
如果沒有相應的檔案 ,執行以下命令
sudo apt-get purge cuda
sudo apt-get autoremove
4.5 刪除顯示驅動
sudo /usr/bin/nvidia-uninstall
如果找不到,用命令
sudo apt-get install autoremove --purge nvidia*