mac 上 caffe编译

一、安装Caffe依赖环境

1.安装cmake

安装http://www.cmake.org/   我安装的是3.9

2.安装HomeBrew

curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1

3.安装opencv

https://www.opencv.org/  我安装的3.4.0

mac上下载  3.4.0 的zip

>cd  (opencv dir path)
>mkdir release
>cd release
>cmake -D WITH_IPP=ON -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 
>make
>sudo make install

3.安装其他依赖

brew install -vd snappy leveldb gflags glog szip lmdb
brew install hdf5
brew install protobuf boost

二、编译Caffe

>git clone https://github.com/BVLC/caffe
>cd (cafe path)
>cp Makefile.config.example Makefile.config   //mac上只能使用cpu 所以要将 makefile 里面CPU_ONLY := 1 前面注释去掉 另外OPENCV_VERSION := 3 注释也要打开
>mkdir build
>cd build
>cmake ..
>make
>make runtest

出现下面

安装成功..通过了测试


二、caffe-ssd  编译
ssd 是 基于caffe的一个目标检测框架

>git clone https://github.com/weiliu89/caffe.git
>git checkout ssd

关于mac 上编译与上述caffe 过程类似

make过程中如果出现  cbais.h 文件找不到的 安装一下 openblas

 brew install --fresh -vd openblas

make过程中出现了 vecLib.framework not found的错误

cmake/Modules/FindvecLib.cmake

Line 19, replace
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Headers/

by
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Headers/

10.13(这个是你本机版本)

改完以后 最好重新cmake一下


三、make pycaffe遇到的坑

1. veclib.framework 找不到

 将 makefile 中 vecLib 引用的位置 全部替换成 openblas 的 INCLUDE 和 LIB 都替换 如下

  BLAS_INCLUDE := /usr/local/Cellar/openblas/0.3.0/include
LDFLAGS +=/usr/local/Cellar/openblas/0.3.0/lib/libopenblas.a

2.No receipt for ‘com.apple.pkg.CLTools_Executables’ found at ‘/’.

终端输入xcode-select –install  安装完成即可

3.boost_python not found

找到mac上  boost_python的路径 执行如下命令

sudo ln -s libboost_python2.7.a libboost_python.a    

4. Python.h 文件找不到

搜索电脑上的python.h文件位置路径,然后修改makefile里面

PYTHON_INCLUDE  以及PYTHON_LIB 的路径

5.Fatal Python error: PyThreadState_Get: no current thread

python 存在多个版本导致的 主要是brew 安装的Python 和 系统自带的Python 冲突了

建议将makefile中引用python的路径都设定到brew安装的python,或者保留一个python版本

https://www.e-learn.cn/content/wangluowenzhang/52106  可以参考下

6. File "caffe/io.py", line 2, in <module>

    import skimage.io

 sudo pip install scikit-image


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值