參考
Caffe官網
Ubuntu 14.04上安装caffe
Caffe學習筆記2--Ubuntu 14.04 64bit 安裝Caffe(GPU版本)
坑爹的Caffe + Ubuntu14.04 + NVIDIA 环境配置
Caffe搭建:Ubuntu14.04 + CUDA7.5 + opencv3.1+python3.5
从零安装 Caffe (Ubuntu 14.04)
Caffe + Ubuntu 15.04 + CUDA 7.5 新手安装配置指南
How to install caffe on ubuntu 14.04(without GPU) and python interface
Caffe学习系列(1):安装配置ubuntu14.04+cuda7.5+caffe+cudnn
配置:
GPU: Nvidia GeForce GTX 960
CPU: i7
Caffe安裝需要依賴:
- CUDA is required for GPU mode.
- BLAS via ATLAS, MKL, or OpenBLAS.
- Boost >= 1.55
- protobuf, glog, gflags, hdf5
一. 安裝Caffe需要依賴包
$ sudo apt-get install build-essential # basic requirement安裝protobuf, leveldb, snappy, opencv, hdf5, protobuf compiler
$ sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler安裝boost
$ sudo apt-get install --no-install-recommends libboost-all-dev安裝gflags, glogs ,lmdb
$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
二. 安裝CUDA7.5
2.1 先確認配置環境
2.1.1確認有GPU支援CUDA
$ lspci | grep VGA
這裡是GeForce GTX 960
可到CUDA GPUs去驗證,看相容版本
2.1.2 確定Linux版本支持CUDA
make sure that it is a x86_64
看x86_64這項,確保是x86架構,64bit系統
$ uname -m && cat /etc/*release
2.1.3 確定系統已經安裝了GCC
$ gcc --version
裝nvidia driver:
參考這篇來裝nvidia driver
How to install the latest Nvidia drivers on Ubuntu 14.04 Trusty Tahr
自己的安裝步驟 ubuntu14.04 安裝nvidia顯卡driver
Note.
參考 坑爹的Caffe + Ubuntu14.04 + NVIDIA 环境配置
裏面提到在安裝cuda的時候,nvidia driver也會一起裝進去了,可以不用先裝nvidia driver
在第二次安裝caffe時我直接安裝cuda,這次安裝cuda中途就沒再報錯了,直接安裝成功
如果自己裝nvidia driver的話可能要小心版本問題
不過沒照裏面方法用.run方法裝,還是用deb的方法,之後可能要再來一次加入no-opengl-libs了.
或者看看有沒有辦法直接調整成用內顯顯示,獨顯運算
不過應該不用禁用nouveau跟關掉lightdm
2.2 安裝CUDA7.5
https://developer.nvidia.com/cuda-downloads下載對應版本CUDA安裝包
這裡選deb(local)方法
依照官方指令安裝cuda
$ sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb $ sudo apt-get update $ sudo apt-get install cuda
$ sudo reboot
2.3 安裝cuDNN
下載cuDNN https://developer.nvidia.com/rdp/cudnn-download (註冊後下載)
這裡選擇 cuDNN v4 Library for Linux
拷貝cuDNN庫文件到/usr/local/目錄下
$ tar -zxvf cudnn-7.0-linux-x64-v4.0-prod.tgz $ cd cuda $ sudo cp include/cudnn.h /usr/local/include/ $ cd lib64 $ sudo cp lib* /usr/local/lib/
$ cd /usr/local/lib/ $ sudo chmod +r libcudnn.so.4.0.7 $ sudo ln -sf libcudnn.so.4.0.7 libcudnn.so.4 $ sudo ln -sf libcudnn.so.4 libcudnn.so $ sudo ldconfig
2.4 設置環境變數
設置環境變數看到兩種方法
(1)
將下兩行加到~/.bashrc裡
export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
$ source ~/.bashrcor
放在系统配置文件profile裡面
$ sudo vim /etc/profile
export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
$ source /etc/profile
(2)
在/etc/profile中添加CUDA環境變數
$ sudo vim /etc/profile添加内容:
PATH=/usr/local/cuda/bin:$PATH export PATH執行下列命令, 使環境變數立即生效
$ source /etc/profile同时需要添加lib庫路徑:
在 /etc/ld.so.conf.d/ 加入文件 cuda.conf
$ vim /etc/ld.so.conf.d/ cuda.conf内容如下:
/usr/local/cuda/lib64執行下列使之立即生效
$ sudo ldconfig
2.5 安裝cuda samples確認驅動及顯卡安裝成功
進入/usr/local/cuda/samples,執行下列來build samples
$ sudo make all -j4邊後呈現這樣(不確定有編譯完??)
Note. 第二次安裝caffe,跑完的結果,這應該才是有成功安裝完吧
全部編譯完成後,進入 samples/bin/x86_64/linux/release,執行deviceQuery
$ ./deviceQuery如果出現顯卡信息,則驅動及顯卡安裝成功,結果如下:
三. 安装Intel MKL,openBlas 或Atlas:
這裡安裝Atlas,caffe默認使用的,不需額外配置
$ sudo apt-get install libatlas-base-dev
四. 安装caffe所需要的Python环境Anaconda
從https://repo.continuum.io/archive/下載anaconda
這裡下載Anaconda2-4.0.0-Linux-x86_64.sh
執行
$ bash Anaconda2-4.0.0-Linux-x86_64.sh依照提示安裝anaconda
安裝完顯示:
環境變數在選[yes]後,自動加入到~/.bashrc裡
$ sudo reboot
五. 安裝OpenCV 3.1.0
從官網下載
首先安裝必需的安裝包
$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev從官網下載Opencv 3.1
解壓縮
$ unzip opencv-3.1.0.zip也可在多裝opencv_contrib, 下載opencv_contrib
解壓縮 $ unzip opencv_contrib-master.zip
但這部份我出錯了,就暫時先不裝opencv_contrib
$ cd opencv-3.1.0/ $ mkdir release $ cd release $ cmake -DBUILD_TIFF=ON -DENABLE_AVX=ON -DWITH_OPENGL=ON -DWITH_OPENCL=ON -DWITH_IPP=ON -DWITH_TBB=ON -DWITH_EIGEN=ON -DWITH_V4L=ON -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=$(python -c "import sys; print(sys.prefix)") -DPYTHON_EXECUTABLE=$(which python) -DPYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") -DPYTHON_PACKAGES_PATH=$(python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") ..Note. 如果裝opencv_contrib, cmake要在多加入opencv_contrib的資訊
Opencv配置
編譯按裝
$ make -j8給他一點時間..
$ sudo make install
安裝完可去嘗試跑個簡單測試,看opencv有沒有安裝成功
CMakeLists.txt內容:
cmake_minimum_required(VERSION 2.8) project(main) find_package(OpenCV REQUIRED) add_executable(main main.cc) target_link_libraries(main ${OpenCV_LIBS})
六. 編譯Caffe
下載Caffe
$ unzip caffe-master.zip $ cd caffe-master $ cd python先安裝python-pip
$ sudo apt-get install python-pip執行
$ for req in $(cat requirements.txt); do pip install $req; done跑完部份截圖
進入caffe-master目錄,複製一份Makefile.config.example
$ cp Makefile.config.example Makefile.config修改Makefile.config中的路徑,將默認python的地方註解掉,改成anoconda的路徑,並開啟cuDnn以及Opencv3的支持
修改的地方有:
開啟cuDnn
Opencv3
anoconda 路徑
python 路徑
編譯
$ make all -j8
$ make test -j8
$ make runtest -j8
Caffe的python接口配置
$ make pycaffe -j8
$ make distribute
配置路徑:
將下兩行寫入~/.bashrc 裡
export LD_LIBRARY_PATH=/home/ss/anaconda2/lib:$LD_LIBRARY_PATH export PYTHONPATH=/home/ss/Downloads/caffe-master/distribute/python:$PYTHONPATH
七. 使用mnist測試
進入caffe-master裡
$ sh data/mnist/get_mnist.sh $ sh examples/mnist/create_mnist.sh $ sh examples/mnist/train_lenet.sh跑完就代表,目前裝的是成功拉
Note.
幾個在安裝過程小小的問題
在 $ sudo apt-get install cuda 報錯了
看到了錯誤中文翻譯,稍微看一下
Unmet dependencies for libcheese-gtk23 and libcheese7 on 14.04.2
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到(Incoming)目录移出。
下列信息可能会对解决问题有所帮助:
下列软件包有未满足的依赖关系:
unity-control-center : 依赖: libcheese-gtk23 (>= 3.4.0) 但是它将不会被安装
依赖: libcheese7 (>= 3.0.1) 但是它将不会被安装
E: 错误,pkgProblemResolver::Resolve 发生故障,这可能是有软件包被要求保持现状的缘故。
參考網址#10的解法
$ sudo apt-get install libglew-dev libcheese7 libcheese-gtk23 libclutter-gst-2.0-0 libcogl15 libclutter-gtk-1.0-0 libclutter-1.0-0再次 $ sudo apt-get install cuda
就可安裝了.
這裡reboot後又出錯了,應該是沒抓到intel內顯
在裝cuda時可能把intel某些東西蓋掉了
重新裝intel顯卡驅動
$ sudo apt-get install --reinstall xserver-xorg-core xserver-xorg-video-intel xserver-xorg-video-glamoregl libgl1-mesa-glx就可再用內顯顯示
裝完Anaconda python時,要記得reboot
不然有些python路徑會讀不到
配置opencv會出現如圖最後幾行PYTHON_PACKAGES_PATH的warning
在執行$ for req in $(cat requirements.txt); do pip install $req; done時也會有python相關error出現
Error
$ make runtest -j8
參考http://stackoverflow.com/questions/12335848/opencv-program-compile-error-libopencv-core-so-2-4-cannot-open-shared-object-f解答
$ locate libopencv_core.so.3.1找出 libopencv_core.so.3.1位置
在 /etc/ld.so.conf.d 加入 opencv.conf 檔案
$ sudo vim /etc/ld.so.conf.d/opencv.conf寫入
/home/ss/Downloads/opencv-3.1.0/release/lib/
$ sudo ldconfig -v就ok了
Error:
$ make runtest -j8
出現錯誤:lidhdf5_hl.so.10 cannot open...
solve:
參考https://github.com/BVLC/caffe/issues/1463
$ locate libhdf5_hl
是放在 /usr/lib/x86_64-linux-gnu/ 底下
$ cd /usr/lib/x86_64-linux-gnu/
$ ls | grep libhdf5
我的是libhdf5.so.10沒有找到
$ sudo ln -s libhdf5.so.7 libhdf5.so.10 $ sudo ln -s libhdf5_hl.so.7 libhdf5_hl.so.10
Error:
在 python import cv2 的時候
應該是 cv2.so 沒抓到
$ locate cv2.so發現是在/home/ss/Downloads/opencv-3.1.0/release/lib/cv2.so裡
(為什麼我裝opencv沒到/usr/local/lib/python2.7/site-packages裡呢???)
添加路徑到 PYTHONPATH 裡
加下列加到 ~/.bashrc 裡
export PYTHONPATH=/home/ss/Downloads/opencv-3.1.0/release/lib:$PYTHONPATH
Error:
在 import caffe 時
ImportError: libcaffe.so.1.0.0-rc3: cannot open shared object file: No such file or directory
$ locate libcaffe.so.1.0.0-rc3
把
export LD_LIBRARY_PATH=/home/ss/Downloads/caffe-master/distribute/lib:$LD_LIBRARY_PATH加到 ~/.bashrc 裡
$ source .bashrc就可以了
不過會load很久,應該有別的好的解決辦法 ???
希望不要在有意外R Orz
我在make pycaffe -j8
回覆刪除錯誤了
wjj@wjj-Veriton-P530-F2:~/caffe-master$ make pycaffe -j8
touch python/caffe/proto/__init__.py
CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
PROTOC (python) src/caffe/proto/caffe.proto
python/caffe/_caffe.cpp:1:52: fatal error: Python.h: No such file or directory
#include // NOLINT(build/include_alpha)
^
compilation terminated.
make: *** [python/caffe/_caffe.so] Error 1
請問您有遇到嗎
另外我發現
刪除cd release
然後 cmake之後 我的python2的libraries 沒有顯示路徑
How to Get to Jackpot King: Live Dealers in Michigan
回覆刪除That's only possible because online sports betting is now 부천 출장안마 officially live in 김천 출장안마 Michigan. 충청남도 출장마사지 This means 안성 출장샵 that there are many betting sites 수원 출장안마 and sites