设为首页 收藏本站
查看: 1461|回复: 0

[经验分享] 20160512关于mac安装caffe的记录

[复制链接]

尚未签到

发表于 2017-7-6 20:40:52 | 显示全部楼层 |阅读模式
  记得2015年在mac系统上安装过一次caffe,非常顺利,但是最近群里许多同学反映mac安装caffe出现了各种问题,同时我也在帮助别人安装caffe的时候也遇到了一些坑,不再像以前这么顺利了。估计与操作系统,caffe升级有关。
  今晚我重新装了一遍caffe,记录下了整个安装过程,希望对各位同学有用。
  mac os 版本:10.11.4
  xcode 版本: 7.2

1. 安装Homebrew
  homebrew是一个包管理器,是用来安装各种包的安装器。安装方法也很简单,直接看主页吧。http://brew.sh。

2. 安装cuda,xcode
  这个也不需要我多说了,cude官网https://developer.nvidia.com/cuda-downloads。
  xcode直接在app store里面安装。
  安装好了之后在bashrc里面将下面两行添加进去,注意版本号的区别,我这里是7.0的版本,现在已经出了7.5的版本了,建议添加之前ls看看有不有这个目录。
  

export PATH=/Developer/NVIDIA/CUDA-7.0/bin:$PATHexport DYLD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-7.0/lib:$DYLD_LIBRARY_PATH  

3. 各种依赖
  这个也很简单,在命令行复制下面的语句执行即可。
  

for x in snappy leveldb gflags glog szip hdf5 lmdb homebrew/science/opencv;do    brew uninstall $x;    brew install --fresh -vd $x;donebrew uninstall --force protobuf; brew install --with-python --fresh -vd protobufbrew uninstall boost boost-python; brew install --fresh -vd boost boost-python  

4. 下载caffe修改配置
  

git clone https://github.com/BVLC/caffe.gitcd caffecp Makefile.config.example Makefile.config  

5. 安装caffe
  

mkdir buildcd buildcmake -DCPU_ONLY=ON ..  

6. 继续安装
  

make all -j8  

  开始遇到一些坑了。
  ①提示我没有装hdf5,之前我的语句是有安装的,不过既然提醒我没有,那就再装一遍吧。
  

brew install hdf5  

  ②提示cblas.h没有。安装brew install openblas,然后brew link openblas –force
  ③接着make all -j8,提示我这个
DSC0000.jpg

  vecLib没有,这个的修改下CMakeCache.txt文件,不过改之前大家养成好习惯ls看看有不有这个目录
  /System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Versions/Current/Headers
  将
  

//vecLib include directoryvecLib_INCLUDE_DIR:PATH=/System/Library/Frameworks/vecLib.framework/Headers  

  改为
  

//vecLib include directoryvecLib_INCLUDE_DIR:PATH=/System/Library/Frameworks/Accelerate.framework/Versions/Current/Frameworks/vecLib.framework/Versions/Current/Headers  

7 The Last
  最后make all -j8 结束,就make runtest,结果如下图,应该没什么问题了。
DSC0001.jpg


8 Pycaffe安装
  因为make all是相当于已经执行过了make pycaffe的。但是我这里将
  

export PYTHONPATH=/Users/ericxu/gitproj/caffe/python:$PYTHONPATH  

  加入到bashrc里面之后,在python中执行import caffe,报错,错误为segmentation fault :11。
  为了解决这个问题,也查询了许多资料。其中比较有意思的如下:
  1. http://blog.csdn.net/huangynn/article/details/50898661
  2. http://www.jeepshoe.org/989268822.htm
  3. https://github.com/BVLC/caffe/issues/591
  最后得出一个结论就是,python配置的问题。具体体现在下面两点:
  1. caffe目录下面的文件Makefile.config里面有段话:
  

NOTE: this is required only if you will compile the python interface.  

  这个就是需要修改的地方,其中PYTHON_LIB和PYTHON_INCLUDE特别关键,需要根据自己机器的python环境修改。一般来说有3种python环境,系统自带,brew安装,Anaconda带的。我找到自己机器的python路径为:/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib和/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/include/python2.7,上述分别为lib和include。
  2. 在安装caffe的时候,需要执行cmake ..,然后系统会输出python的环境配置。比如这样:
DSC0002.jpg

  很明显有问题,为啥Libraries还是2.7.10,和Interpreter版本根本不匹配,照理说我在Makefile.config修改了应该生效呀。这里先不管了,我直接修改build/CMakeCache.txt吧。
  修改的地方截图如下:
DSC0003.jpg

DSC0004.jpg

DSC0005.jpg

  修改完毕,然后重新make all -j8,就可以了。
  最后make pytest也通过了。

9 复现NeuralStyle
  既然安装好了caffe,那么使用caffe,复现下NeuralStyle吧。
  这里只放出最后的成果,模型用的googlenet。
DSC0006.jpg

DSC0007.jpg

DSC0008.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-391103-1-1.html 上篇帖子: mac下安装MySQL 5.7 下篇帖子: Kinect2.0 for Mac开箱
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表