踩坑筆記之環境配置——Ubuntu16.04、caffe、pytorch、tensorflow、keras、anaconda、opencv3、matlab

(新版CSDN沒了markdown還有點兒難用不是很習慣。。排版很差將就看啦哈哈哈哈)

強調一下&讓自己記住踩過的坑~

  • 刷機搭框架遇到問題——sudo下安裝

  • caffe編譯出了問題——sudo su進入管理者再安裝

例如:error:could not find/open output/input file :  .build_release/..........諸如此類

另外,在運行caffe相關前需要到安裝根目錄下編譯caffe,依次輸入以下指令:

sudo su
make all -j4
make test -j4
make runtest
make pycaffe

 

  • make pycaffe報錯
     如果在編譯make pycaffe這一句報錯,顯示:

make:nothing to be done for ‘pycaffe’

     先嚐試:

$ sudo apt-get install python-numpy

     再make pycaffe,如果還是報錯:fatal error:numpy/arrayobject.h: No such file or directory compilation terminated.


     但是在上一步已經有輸入:

$ sudo apt-get install python-numpy

     應當已經下載了python-numpy的包,懷疑是環境變量的問題,在jupyter下輸入:

import numpy as py
np.get_include()

    得到如下結果:(以及與caffe-master下查看Makefile.config)   


    注意,Makefile.config需要用權限才能修改,在Terminal中進入sudo界面,打開Makefile.config所在位置,依次輸入:

cp Makefile.config.example Makefile.config
gedit Makefile.config 
     把PYTHON_INCLUDE那一句按照jupyter輸出加上local/就可以保存啦。

    然後。。。(我也是很崩潰啊)make pycaffe報了新的錯誤(微笑臉),顯示cannot find -lhdf5_hl/cannot find -lhdf5:

     解決辦法還是回到剛纔的Makefile.config,找到:

# Whatever else you find you need goes here.下面的
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
     將上面這兩句修改爲:

INCLUDE_DIRS :=  $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
//這是因爲ubuntu16.04的文件包含位置發生了變化,尤其是需要用到的hdf5的位置,所以需要更改這一路徑
    好的~至此可以順利的make pycaffe啦~

   當然天真的我以爲可以在python中import caffe了,然鵝啊,程序員的世界是沒有這麼簡單的!!接下來進入下一節

 (啊啊啊啊啊這個工作站預裝的還不如以前自己裝啊好多坑啊哭唧唧T T,好多依賴庫也不知道裝沒裝)

 

  • 安裝編譯好了caffe,但是無法在python中import
    ImportError:/opt/anaconda2/bin/../lib/libstdc++.so.6: version 'GLIBCXX_3.4.21' not found (requires by /home/caffe-master/python/caffe/_caffe.so)

    接着上面的來,現在報錯提示爲:

     用代碼查看工作站內GLIBCXX的版本:

     (這個地方還有一個小坑坑是libstdc++手動查看的時候只是在/usr/lib/libstdc++.so.6下,但是運行會報錯沒有這個文件,在此文件的properties中查看location是有x86_64-linux-gnu的,微笑臉~
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
     可素!這不就是嗎???瞎了我的卡姿蘭狗眼
    好的。。。在我查閱論壇發現很多時候Anaconda安裝都會和Caffe、python2、python3有衝突(例如用jupyter打開new file只有python2格式沒有python3的格式),那就試試把anaconda刪了吧。。。
    在根目錄(和home並列)下找到opt文件夾,刪除整個anaconda2的文件夾,但不能直接刪除,在terminal下輸入:
    
sudo rm -rf anaconda
     (有時候還需要註釋根目錄下.bashrc下包括anaconda2路徑的語句:#export PATH=/home/lq/anaconda3/bin:$PATH
再在terminal輸入source ~/.bashrc使其立即生效,輸入python查看是否刪除乾淨

    不吹不黑,刪完之後爽的不行:之前只能在sudo下才能import torch,直接在terminal下無法import torch也直接解決了.
   
    繼續開始重新編譯caffe,按上一小節重頭開始,輸入make pycaffe還報了一次沒有numpy,修改Makefile.config就好啦~

    現在試着import torch,顯示

     在終端輸入:(不知道爲啥根目錄下還有一個matplotlib的截圖?不知道怎麼弄的直接刪了)
sudo pip install python-Matplotlib
     撒花QAQ式完畢感謝上帝:
     不負責任的總結!!Conda是大坑大坑大坑
  
   

  • 在sudo下安裝了pytorch,進入sudo可以import torch,但是在jupyter導入則報錯無module——ipython
     1.Step 1

       #python

$ sudo python -m pip install ipykernel
$ sudo python -m ipykernel install

       #python3

$ sudo python3 -m pip install jupyterhub notebook ipykernel
$ sudo python3 -m ipykernel install
     2.Step 2
     
$ sudo apt-get install build-essential

     3.Step 3

        #python2

$ sudo pip install jupyter
$ sudo apt-get build-dep python-matplotlib python-tk

        #python3

$ sudo pip3 install jupyter
$ sudo apt-get build-dep python3-matplotlib python3-tk

     4.Test

$ mkdir tf-notebooks
$ cd tf-notebooks
$ jupyter notebook

  • Ubuntu16.04下安裝opencv
   貼上教程地址:http://blog.csdn.net/yehuohan/article/details/51327465


  • 顯卡崩潰重新安裝驅動
   在開啓工作站的時候有時候出現開機界面分辨率異常,則是顯卡出現崩潰,重裝顯卡驅動:
   1、Ctrl+Alt+F1進入terminal界面
   2、輸入用戶名與密碼,依次輸入:
   
sudo service lightdm stop / sudo stop lightdm   #重啓lightdm
sudo init 3   #進入Ubuntu開機圖片的terminal界面
   3、安裝驅動程序,進入/home/lthpc/software,找到驅動文件所在地址,輸入:
   
sudo ./NVIDIA-Linux-x86_64-384.98.run
   4、sudo reboot 重啓

   5、有可能還會遇到需要exit X service的情況,如果安裝驅動報錯:......you appear to be running an x server plaese exit x 
before installing...... 需要找到進程前x service的ID並關閉:
ps -e | more #加上| more纔可以翻頁
sudo kill ID* #找到xorg對應進程ID
   再完成第3步即可。

 

  • Ubuntu界面打開只有壁紙沒有菜單欄等
  首先Ctrl+Alt+F1,輸入命令行試着重啓lightdm:  
sudo service lightdm restart
   還是不行的話則需要重新安裝Unity,依次輸入:
sudo apt-get update
sudo apt-get install --reinstall ubuntu-desktop
sudo apt-get install unity


  • 運行keras程序報錯:Your CPU suppotrs instructions that this TensorFlow binary was not compiled to use:SSE4.1 SSE4.2 AVX AVX2 FMA
   
      也就是需要給Tensorflow進行自定義構建,在下面這個文檔中可以下載自己需要的類型的whl文件:

       下載完畢後將此文件放入/tmp下,cd tmp,輸入以下指令:

sudo pip install tensorflow-1.4.0-cp27-cp27mu-linux_x86_64.whl

     再次運行時則不會報錯了。

  • Ubuntu16.04下安裝Matlab R2016b

     此鏈接寫得很完整:http://blog.csdn.net/jesse_mx/article/details/53956358

     按上面鏈接的步驟安裝完畢後需要退出掛載並且刪除文件,在Terminal下輸入:

sudo umount /home/<your user name & path>/matlab
sudo umount sudo umount /home/<your user name & path>/matlab  #因爲掛載了兩個文件
sudo rm -r /home/<your user name & path>/matlab

     另外,激活以後發現只能在安裝目錄/bin輸入.matlab才能打開matlab,配置環境變量的軟鏈接,在根目錄下輸入:

sudo gedit .bashrc
     在.bashrc文件最後export加入matlab的path:
export PATH="/usr/local/MATLAB/R2016b/bin:$PATH"
     返回Terminal輸入下面指令,使得環境變量立即更新:
source ~/.bashrc

注意:因爲上面給的鏈接的路徑寫法有空格,linux無法識別,我直接把“Matlab 2016b Linux64 Crack”那個文件夾名字改爲了“Crack”

如果發現激活不成功,報錯:Could not complete activation because the License  File could not be written to the disk. You might not have write  permission on the License File or the folder.

由於無法sudo matlab打開matlab(輸入matlab可以),需要在sudo下來激活,找到./activate_matlab.sh

cd /usr/local/MATLAB?R2016b/bin
sudo ./activate_matlab.sh

此時跳轉到了激活界面,但是是用權限打開的,可以順利加入license文件,激活成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章