Ubuntu16.04-x64安裝caffe2(僅CPU)
Ubuntu16.04-x64安裝caffe2(僅CPU)
Caffe2是一個(gè)相對(duì)比較新的平臺(tái),在caffe2的安裝過(guò)程中可能會(huì)出現(xiàn)各種各樣的問(wèn)題,大家保持耐心,總是可以安裝好的。
Caffe2的安裝過(guò)程大家可以參考caffe2官網(wǎng)提供的教程https://caffe2.ai/docs/getting-started.html?platform=ubuntu&configuration=compile,
按照官網(wǎng)教程進(jìn)行安裝總歸是沒(méi)錯(cuò)的,但在安裝過(guò)程中會(huì)出現(xiàn)很多問(wèn)題,如更新源,pip,memory error,虛存等,在以下的安裝過(guò)程中,會(huì)對(duì)一出現(xiàn)的問(wèn)題提供解決方案。
?????? 筆者的環(huán)境是Ubuntu16.04-x64,配置如下
1、首先更新一下源,并安裝依賴文件,以及pip,最好將3條指令分開(kāi)進(jìn)行
sudo?apt-get?update
sudo?apt-get?install?-y?--no-install-recommends?
????? build-essential
????? cmake
????? git
????? libgoogle-glog-dev
????? libprotobuf-dev
????? protobuf-compiler
????? python-dev
????? python-pip?????????????????????????
sudo pip install numpyprotobuf
先update一下
下載python pip等的依賴文件
使用pip下載numpy和protobuf等,在使用pip下載的過(guò)程中,有些同學(xué)可能會(huì)發(fā)現(xiàn),下載速度超級(jí)慢,并且可能會(huì)出現(xiàn)下載中斷等問(wèn)題。
這是因?yàn)檫@里使用的鏡像的問(wèn)題,可以將鏡像改為國(guó)內(nèi)鏡像,可以參考http://blog.csdn.net/wukai0909/article/details/62427437
創(chuàng)建一個(gè).pip文件夾,在文件夾內(nèi)傳建一個(gè)文件pip.conf
mkdir ~/.pip
cd ~/.pip
vi pip.conf
將下列文字寫(xiě)入文件內(nèi),保存并退出
[global]
index-url?=?https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
再次執(zhí)行第三條安裝語(yǔ)句,下載速度就非??炝?/p>
2、安裝libgflags
#?for?Ubuntu?14.04
sudo?apt-get?install?-y?--no-install-recommends?libgflags2
#?for?Ubuntu?16.04
sudo?apt-get?install?-y?--no-install-recommends?libgflags-dev
這個(gè)我已經(jīng)安裝過(guò),所以不會(huì)再安裝。
3、安裝各種依賴文件
?#?for?both?Ubuntu?14.04?and?16.04
sudo?apt-get?install?-y?--no-install-recommends?
??????libgtest-dev?
??????libiomp-dev?
??????libleveldb-dev?
??????liblmdb-dev?
??????libopencv-dev?
??????libopenmpi-dev?
??????libsnappy-dev?
??????openmpi-bin?
??????openmpi-doc?
??????python-pydot
sudo?pip?install?
??????flask?
??????future?
??????graphviz?
??????hypothesis?
??????jupyter?
??????matplotlib?
??????pydot?python-nvd3?
??????pyyaml?
??????requests?
??????scikit-image?
??????scipy?
??????setuptools?
??????six?
??????tornado
安裝過(guò)程時(shí)間比較長(zhǎng),請(qǐng)耐心等待,不過(guò)這里一般不會(huì)出現(xiàn)錯(cuò)誤
但是在使用pip的時(shí)候可能會(huì)出現(xiàn)錯(cuò)誤
Scipy和scikit-image是依賴關(guān)系比較復(fù)雜的依賴文件,所以常常會(huì)在這里出現(xiàn)錯(cuò)誤,可以使用這個(gè)教程來(lái)解決問(wèn)題https://stackoverflow.com/questions/29466663/memory-error-while-using-pip-install-matplotlib
然后又出現(xiàn)了 command “python setup.py egg-info”failed with error code 1 in /tmp/pip-build*
使用這個(gè)教程http://outofmemory.cn/code-snippet/36001/python-pip-python3 安裝pip3,并使用pip3重新安裝pip安裝過(guò)的文件
sudo apt-get install python-pip3
sudo pip3 install python3-pip
sudo pip3 install packagename
4、從git下載caffe2,約400M
git?clone?--recursive?https://github.com/caffe2/caffe2.git?&&?cd?caffe2
make?&&cd?build?&&?sudo?make?install
python -c 'from caffe2.python import core' 2>/dev/null&&echo"Success"||echo"Failure"
Git速度比較慢,靜靜等待
Caffe2下載完成,緊接著make一下,若出現(xiàn)以下內(nèi)容,則證明安裝程序正在進(jìn)行
還是等待。。。
在進(jìn)行到76%的時(shí)候等待的時(shí)間會(huì)很長(zhǎng),這往往是由于虛存不足導(dǎo)致的,可以按照下面這個(gè)教程解決問(wèn)題http://blog.csdn.net/yanlai20/article/details/46907353
首先創(chuàng)建swap文件夾
mkdirswap
cd swap
創(chuàng)建文件
?sudo?dd?if=/dev/zero?of=swapfile?bs=1024?count=4066544
把生成的文件轉(zhuǎn)換成swap文件
sudomkswap swapfile
激活swap文件
sudo?swaponswapfile
修改/etc/fstab,在文件后面加上?/home/username/swap/swapfile ? swap ?? swap ? defaults ?0 ?0,保存
完成后可以通過(guò)下面的指令查看虛存使用狀況
free –m
回到caffe2安裝界面,ctrl+c中斷目前安裝,并重新執(zhí)行make過(guò)程,發(fā)現(xiàn)安裝可以從76%據(jù)需往下執(zhí)行,直到安裝完成,推薦執(zhí)行make clean后重新make
執(zhí)行cd build && sudo make install,得到下面的結(jié)果
順利構(gòu)建,再使用python?-c?'from?caffe2.python?import?core'?2>/dev/null?&&?echo?"Success"?||?echo?"Failure"
驗(yàn)證安裝結(jié)果
輸出success則安裝成功
5、在python中配置caffe2路徑
vi ~/.bashrc
追加以下內(nèi)容,并根據(jù)自己的主機(jī)名修改“ubuntu”部分
?
export?PYTHONPATH=/usr/local:$PYTHONPATH
export?PYTHONPATH=$PYTHONPATH:/home/ubuntu/caffe2/build
export?LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
?