mac 下安装caffe(二)
使用Anaconda Python
1.brew edit opencv
args << "-DPYTHON_LIBRARY=#{py_lib}/libpython2.7.#{dylib}"
args << "-DPYTHON_INCLUDE_DIR=#{py_prefix}/include/python2.7" 替换成
args << "-DPYTHON_LIBRARY=/Users/work/anaconda/lib/libpython2.7.#{dylib}"
args << "-DPYTHON_INCLUDE_DIR=/Users/work/anaconda/include/python2.7"
2.去掉ANACONDA_HOME的注释并修改为安装的路径
ANACONDA_HOME := /Users/work/anaconda
PYTHON_INCLUDE := $(ANACONDA_HOME)/include \
$(ANACONDA_HOME)/include/python2. \
$(ANACONDA_HOME)/lib/python2./site-packages/numpy/core/include
3.再次make
出错:Warning! ***HDF5 library version mismatched error***
brew uninstall hdf5
出错:
ld: library not found for -lhdf5_hl
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [.build_release/lib/libcaffe.so.1.0.0-rc5] Error 1
makefile中还需要修改PYTHON_LIB如下:
#PYTHON_LIB := /usr/lib
PYTHON_LIB := $(ANACONDA_HOME)/lib
出错:make runtest
.build_release/tools/caffe
dyld: Library not loaded: @rpath/libhdf5_hl.10.dylib
Referenced from: /Users/work/gitclone/caffe/.build_release/tools/caffe
Reason: image not found
make: *** [runtest] Abort trap: 6
设置一下环境变量DYLD_FALLBACK_LIBRARY_PATH
export DYLD_FALLBACK_LIBRARY_PATH=/usr/local/cuda/lib:/Users/work/anaconda/lib:/usr/local/lib:/usr/lib:$DYLD_FALLBACK_LIBRARY_PATH
依然出错。。。
哎哎哎,,,参照 http://playittodeath.ru/how-to-install-caffe-on-mac-os-x-yosemite-10-10-4/ 重新卸载编译吧,依然是这个错误
export DYLD_FALLBACK_LIBRARY_PATH=/usr/local/cuda/lib:/Users/work/anaconda/lib:/usr/local/lib:/usr/lib
export CPLUS_INCLUDE_PATH=/Users/work/anaconda/include/python2.7/:
正确的方法为将添加libhdf5_hl.10.dylib所在路径添加到rpath
install_name_tool -add_rpath '/Users/work/anaconda/lib' /Users/work/gitclone/caffe/.build_release/tools/caffe
test_all.testbin 继续出错-->
dyld: Library not loaded: @rpath/libhdf5_hl.10.dylib
Referenced from: /Users/work/gitclone/caffe/.build_release/test/test_all.testbin
Reason: image not found
make: *** [runtest] Abort trap: 6
再次添加rpath
install_name_tool -add_rpath '/Users/work/anaconda/lib' /Users/work/gitclone/caffe/.build_release/test/test_all.testbin
#这句不用 install_name_tool -add_rpath '/Users/work/anaconda/lib' /Users/work/gitclone/caffe/.build_release/lib/libcaffe.so
终于make runtest成功
Library not loaded错误参考:https://github.com/BVLC/caffe/issues/2320
install_name_tool 参考 http://www.jianshu.com/p/193ba07dadcf
查看可执行文件的依赖情况: otool -L /Users/work/gitclone/caffe/.build_release/test/test_all.testbin
4.make pycaffe
import caffe 出错:
ImportError: No module named google.protobuf.internal
conda install protobuf 即可解决
5.其他错误
a. RuntimeError: module compiled against API version 0xa but this version of numpy is 0x9
系统自带python的numpy版本为1.8.0rc1旧版本
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python
使用pip install numpy --upgrade 升级到1.12.0版本即可
mac 下安装caffe(二)的更多相关文章
- mac 下安装caffe(一)
1.brew install --build-from-source -vd boost boost-python 这一步出错:libtool: unrecognized option `-stati ...
- MAC下安装与配置MySQL
MAC下安装与配置MySQL MAC下安装与配置MySQL 一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL ...
- 《OD大数据实战》mac下安装nginx+php
一.mac安装nginx + php + php-fpm 或apache + php 1. Mac 下 Nginx.MySQL.PHP-FPM 的安装配置 2. Mac下安装LNMP(Nginx+P ...
- Mac 下安装运行Rocket.chat
最近花了一周的时间,复习了HTML.CSS.原生JS,并学习了Node.js.CoffeeScript.js.MongoDB,入了下门. 因为准备在Rocket.chat 上做二次开发,所以先下载和安 ...
- Mac下安装Mongodb
Mac下安装Mongodb 一: 安装MongoDB: Mac下安装MongoDB有两种方法,第一种是通过源码安装,另一种是使用 homebrew, 下面我使用homebrew来安装,首先我们需要安装 ...
- Mac下安装Mysql以及修改Mysql密码
1.安装Mysql 安装有2种办法,一种是下载mysql安装文件,慢慢安装,另一种就是下载xmpp,里面自带mysql,就像是安装普通的mac软件一样,安装完毕,就有了mysql了. 方法一,官网下载 ...
- Mac 下安装Jenkins
Mac 下安装Jenkins 开始 Jenkins是一个基于Java开发的一种持续集成工具,用于建工持续重复的工作,功能包括: 持续的软件版本发布/测试项目 监控外部调用执行的工作. 近期打算搭建自动 ...
- Mac下安装UPnP Inspector
由于工作中需要用到UPnP Inspector这个工具,而这个工具在windows下安装非常简单,在Mac下安装却很麻烦,在此记录安装流程. 这个工具依赖于两个其他的库:Coherence(一个DLN ...
- Mac下安装Wireshark,双击闪退
Mac OS X上使用Wireshark抓包(http://blog.csdn.net/phunxm/article/details/38590561) Mac下安装Wireshark /Appli ...
随机推荐
- 接口与抽象类的区别-Java
概念-抽象类: 类是对某一个对象的具体描述,抽象类则是对有共通之处的对象,描述共通之处的类;包含抽象方法的类一定的抽象类,抽象类并不一定包含抽象方法;抽象类中可以有数据成员,但数据成员必须是stati ...
- Git——基本操作
Shell 基本概念 shell俗称壳,为使用者提供使用界面,例如DOS下command以及后来的cmd.exe shell分类 图形界面shell,提供友好的可视化界面,例如windows操作界面, ...
- STM32的串口DMA收发以及双缓冲区的实现
在使用STM32的UART的DMA功能总结如下: 首先上代码,这里采用STM32 的USART1作为Demo,RX的DMA为DMA1_Channel5,TX的DMA为DMA1_Channel4.初始化 ...
- Qt 5.8.3 部署/添加 Crypto++第三方库(5.6.5版本)
首先,Qt没有封装加解密算法库(其实有个哈希函数的函数).介于OpenSSL函数封装不友好,以及先前爆发的心脏滴血漏洞广受诟病,我们考虑在C++上使用一种新的,并且封装友好的,OOAD程度更高的加解密 ...
- Linux 中ifconfig和ip addr命令查看不到ip解决方法
1.输入查看ip的命令ifconfig或ip addr,查不到ip 2.查看ens33网卡配置,输入 vi /etc/sysconfig/network-scripts/ifcfg-ens33 将ON ...
- Xamarin绑定ios静态库
以下是官方的步骤介绍,我就不再一步步解释了 https://docs.microsoft.com/zh-cn/xamarin/ios/platform/binding-objective-c/walk ...
- 04Microsoft SQL Server 数据库创建,查看,使用,修改及删除
Microsoft SQL Server 数据库创建,查看,使用,修改及删除 创建数据库 创建普通数据库 USE [master] GO CREATE DATABASE [MyDataBase] -- ...
- go new() 和 make() 的区别
看起来二者没有什么区别,都在堆上分配内存,但是它们的行为不同,适用于不同的类型. new(T) 为每个新的类型T分配一片内存,初始化为 0 并且返回类型为*T的内存地址:这种方法 返回一个指向类型为 ...
- Android中ProgressDialog自动消失
主要函数部分代码: final ProgressDialog proDialog = android.app.ProgressDialog .show(MainActivity.this, " ...
- mybatis传参总结
注:文章引用部分 mybatis传递参数总结文章内容 一.单个参数 1.基本数据类型 (1)直接使用 List<ChargeRuleDO> tests(long id); <sele ...