俺の技術メモ

俺の技術メモ

IT技術で忘れないようメモしてます。

Amebaでブログを始めよう!
⬛︎環境
 Mac OS X Yosemite Ver 10.10.4
 MacBook Air(11-inch,Early 2014)
 プロセッサ 1.4GHz Intel Core i5
 メモリ 4GB 1600 MHz DDR3
 グラフィックス Intel HD Graphics 5000 1536MB

⬛︎構築準備インストール
 Anaconda-2.2.0-MacOSX-x86_64.sh
 boost_1_57_0.tar
 cuda_7.0.29_mac_pkg
 cuda_7.0.29_mac_network.dmg
 cudadriver-7.0.52
 cudnn-6.5-osx-v2.tar

⬛︎確認
 $ brew -v
 Homebrew 0.9.5

 $ python -V
 Python 2.7.9 :: Anaconda 2.2.0 (x86_64)

 $ pip -V
 pip 6.0.8 from /Users/moritomo/anaconda/lib/python2.7/site-packages (python 2.7)

 caffeのtagを調べる
 $ cd /usr/local/caffe
 $ git tag -l
 acm-mm-oss
 bsd
 rc
 rc2
 rcnn-release
 v0.1
 v0.9
 v0.99
 v0.999
 v0.9999

 caffeをgitでどのURLからcloneしたものなのか確認
 $ cd /usr/local/caffe
 $ git remote -v
 origin https://github.com/BVLC/caffe.git (fetch)
 origin https://github.com/BVLC/caffe.git (push)

 指定のtagを取得する場合
 $ cd /usr/local/caffe
 $ git checkout refs/tags/v0.9999

⬛︎修正ファイル

 Makefile.configの修正
 CPU_ONLY := 1

 CUSTOM_CXX := clang++

 CUDA_DIR := /usr/local/cuda

 CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \
-gencode arch=compute_20,code=sm_21 \
-gencode arch=compute_30,code=sm_30 \
-gencode arch=compute_35,code=sm_35 \
# -gencode arch=compute_50,code=sm_50 \
# -gencode arch=compute_50,code=compute_50

 BLAS := open

 BLAS_INCLUDE := /usr/local/Cellar/openblas/0.2.14_1/include

 BLAS_LIB := /usr/local/Cellar/openblas/0.2.14_1/lib

 PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include

 ANACONDA_HOME := /Users/moritomo/anaconda

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

 PYTHON_LIB := /usr/lib /usr/local/cuda/lib

 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /Developer/NVIDIA/CUDA-7.0/include /usr/local/Cellar/boost/1.57.0/include/

 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/local/cuda/lib /Developer/NVIDIA/CUDA-7.0/lib /usr/local/opt/boost/lib /usr/local/Cellar/boost/1.57.0/lib


 Makefileの修正
 修正前
 #CXXFLAGS += -stdlib=libstdc++
 #LINKFLAGS += -stdlib=libstdc++

 修正後
 CXXFLAGS += -stdlib=libc++
 LINKFLAGS += -stdlib=libc++

 修正前
 #BLAS_INCLUDE ?= /System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Headers/

 修正後
 BLAS_INCLUDE ?= /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/

 修正前
 #BLAS_INCLUDE ?= /System/Library/Frameworks/vecLib.framework/Versions/Current/Headers/

 修正後
 BLAS_INCLUDE ?= /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/Headers/

 下記をコピー
 /usr/local/Cellar/boost/1.57.0/lib/libboost_system.dylib
 $ cp /usr/local/Cellar/boost/1.57.0/lib/libboost_system.dylib /usr/local/lib/

 /usr/local/Cellar/boost/1.57.0/lib/libboost_system.a
 $ cp /usr/local/Cellar/boost/1.57.0/lib/libboost_system.a /usr/local/lib/

 ✳︎シンボリックリンクをいくつか貼る箇所があるが忘れる
 →コンパイルエラーが出たら辿ってシンボリックリンクを貼る/ファイルをコピー

⬛︎動作テスト
 $ pwd
 /usr/local/caffe

 $ cd /usr/local/caffe
 $ make all -j8
 $ make test
 $ make runtest






⬛︎参考サイト

Mac OS X 10.10にCaffeをインストールするまで

OS X 10.10(Yosemite)にCaffeをインストールする

OSX10.10でCaffeをインストール、リファレンスモデルで画像を分類

Caffe Macインストール

⬛︎Ubuntuでのインストール参考サイト
Ubuntu 14.04 上での Caffe の導入手順メモ