caffe安裝過程分享(for osx10.11.4)

因?yàn)橐鋈四樧R別,所以先要安裝caffe,首先說明一下我的安裝環(huán)境

電腦:MacBook Pro

顯卡:NVIDIA GeForce GT 650M 1024 MB

系統(tǒng):OX EI Caption 版本10.11.4

安裝過程基本是按照這篇博客來的,http://hoondy.com/2015/04/03/how-to-install-caffe-on-mac-os-x-10-10-for-dummies-like-me/教程還是比較詳細(xì),不過我也遇到不少問題,導(dǎo)致我花了三天才裝好。下面就來看一下吧

1.安裝Homebrew

根據(jù)http://brew.sh/上面的說明安裝Homebrew包管理

2.安裝Anaconda Python

1.從https://store.continuum.io/cshop/anaconda/下載和安裝Anaconda Python包(其中包括Caffe框架用到的hdf5)

export PATH=~/anaconda/bin:$PATH

這一步要注意的是,那個(gè)hd5的安裝,因?yàn)楹竺嫖业挠幸粋€(gè)報(bào)錯(cuò)好像就是因?yàn)闆]有安裝hdf5,所以后面可能還需要再單獨(dú)裝一遍hdf5.

3.安裝CUDA

從https://developer.nvidia.com/cuda-downloads下載并安裝CUDA 7.5

從http://www.nvidia.com/object/mac-driver-archive.html下載并安裝最新的CUDA 獨(dú)立驅(qū)動(dòng)

教程里用的是CUDA7.0,我用的是7.5,所以在設(shè)置路徑的時(shí)候注意對應(yīng)版本。

export PATH=/Developer/NVIDIA/CUDA-7.5/bin:$PATH

export DYLD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-7.5/lib:$DYLD_LIBRARY_PATH

4.安裝BLAS-Intel MKL

由于Mac OS X操作系統(tǒng)自帶的BLAS庫存在一些不穩(wěn)定的問題,因此我選擇安裝Intel MKL庫。如果你是在校大學(xué)生,可以使用學(xué)校郵箱從https://software.intel.com/en-us/qualify-for-free-software/student頁面申請Intel Parallel XE 2015安裝包(后面不要忘記在Makefile.config中設(shè)置BLAS:=MKL)

確保在安裝Intel Parallel XE時(shí)選擇每一個(gè)組件(因?yàn)槿笔∏闆r下不會(huì)安裝MKL組件)

cd /opt/intel/mkl/lib/

sudo ln -s . /opt/intel/mkl/lib/intel64

(因?yàn)樵诰幾gCaffe時(shí)Caffe會(huì)從MKL的intel64目錄中去搜索mkl的庫,但是在安裝MKL后,MKL的lib目錄下并沒有intel64這個(gè)目錄,所以需要建立一個(gè)intel64目錄到lib目錄的軟鏈接)

5.安裝cuDNN

https://developer.nvidia.com/cudnn頁面下載并安裝cuDNN庫(別忘了在Makefile.config中取消USE_CUDNN := 1的注釋)

tar -xzvf cudnn-6.5-osx-v2.tgz

cd cudnn-6.5-osx-v2

sudo cp lib* /usr/local/cuda/lib

sudo cp cudnn.h /usr/local/cuda/include/

這一步需要注意一下,不要下最新的v5版本,會(huì)報(bào)錯(cuò),用v4的版本會(huì)比較好

6.通過Homebrew安裝依賴項(xiàng)

brew edit opencv

將下面兩行

args << "-DPYTHON#{py_ver}_LIBRARY=#{py_lib}/libpython2.7.#{dylib}"

args << "-DPYTHON#{py_ver}_INCLUDE_DIR=#{py_prefix}/include/python2.7"

替換為

args << "-DPYTHON_LIBRARY=#{py_prefix}/lib/libpython2.7.dylib"

args << "-DPYTHON_INCLUDE_DIR=#{py_prefix}/include/python2.7"

brew install --fresh -vd snappy leveldb gflags glog szip lmdb homebrew/science/opencv

brew install --build-from-source --with-python --fresh -vd protobuf

brew install --build-from-source --fresh -vd boost boost-python

7.從Github上面克隆Caffe的代碼

git clone https://github.com/BVLC/caffe.git

cd caffe

cp Makefile.config.example Makefile.config

8.配置Makefile.config

設(shè)置BLAS := mkl

取消USE_CUDNN := 1注釋

檢查并設(shè)置Python路徑,在這里注意一下,因?yàn)槲覀冃枰猘naconda里的python,我的python設(shè)置如下

# We need to be able to find Python.h and numpy/arrayobject.h.

# PYTHON_INCLUDE := /usr/include/python2.7 \

/usr/lib/python2.7/dist-packages/numpy/core/include

# Anaconda Python distribution is quite popular. Include path:

# Verify anaconda location, sometimes it's in root.

ANACONDA_HOME := /anaconda

PYTHON_INCLUDE := $(ANACONDA_HOME)/include/python2.7 \

$(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include \

# Uncomment to use Python 3 (default is Python 2)

# PYTHON_LIBRARIES := boost_python3 python3.5m

# PYTHON_INCLUDE := /usr/include/python3.5m \

#? ? ? ? ? ? ? ? /usr/lib/python3.5/dist-packages/numpy/core/include

# We need to be able to find libpythonX.X.so or .dylib.

# PYTHON_LIB := /usr/lib

PYTHON_LIB := $(ANACONDA_HOME)/lib

又因?yàn)槲业南到y(tǒng)版本問題導(dǎo)致我一直make clean出錯(cuò),然后我在git上找到別人分享的一個(gè)針對osx EI的makefile
https://github.com/SvenTwo/caffe/blob/8a00f49bbe5ea699ad1236540943e88387b61b5b/Makefile

9.設(shè)置環(huán)境變量

原文是

export DYLD_FALLBACK_LIBRARY_PATH=/usr/local/cuda/lib:$HOME/anaconda/lib:/usr/local/lib:/usr/lib:/opt/intel/composer_xe_2015.2.132/compiler/lib:/opt/intel/composer_xe_2015.2.132/mkl/lib

但是我的路徑跟他不一樣,所以我按照我的改了一下,不知道之后使用會(huì)不會(huì)出問題,不過到最好倒是成功安裝了

10.編譯Caffe

make clean

make all

make test

make runtest

make pycaffe

make distribute

make all的時(shí)候注意庫的鏈接路徑,make runtest注意,因?yàn)槭荗X EI Caption版本的,所以會(huì)有這樣的一個(gè)問題
DYLD_FALLBACK_LIBRARY_PATH is cleared by the new System Integrity Protection feature of El Capitan
所以要把System Integrity Protection禁止掉

具體可以參考
http://www.macworld.com/article/2986118/security/how-to-modify-system-integrity-protection-in-el-capitan.html

在make的時(shí)候還有一個(gè)報(bào)錯(cuò),提示需要安裝Xcode Command Line Tools
具體安裝可參考以下鏈接
http://railsapps.github.io/xcode-command-line-tools.html

安裝過程真的蠻痛苦的,希望能對大家有所幫助。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,578評論 6 544
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,701評論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,691評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,974評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,694評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 56,026評論 1 329
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,015評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 43,193評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,719評論 1 336
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,442評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,668評論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,151評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,846評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,255評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,592評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,394評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內(nèi)容