Mac OS X EI 10.11安装caffe注意点
来源:互联网 发布:win2008 mac 绑定 编辑:程序博客网 时间:2024/06/06 03:10
os x ei用了很久,一直没能将caffe安装成功,之前一直使用theano和keras,所以没仔细处理每个问题细节。
今天仔细看了所有问题,最终终于安装成功。下面记录几个注意点:
1、homebrew
一定要使用homebrew管理各种插件,否则会非常蛋疼。caffe依赖的library包括snappy leveldb gflags glog szip lmdb opencv hdf5
brew install -vd snappy leveldb gflags glog szip lmdbbrew tap homebrew/sciencebrew install hdf5 opencv新版的homebrew都会进行识别,特别注意的是,如果之前有过手动安装,可能会带来冲突,这里大部分冲突homebrew会识别,但可能存在漏网的,尤其是opencv,如果之前安装过3.0,这里用homebrew安装2.4,或者用anaconda安装过2.4等等,都会导致冲突,在编译link的时候,就很可能报类似
ld: can't map file, errno=22 file '/usr/local/cuda'//上面具体可能是一个opencv的错误,例如cv:cv::imread(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int) 未定义引用//又或者是cv::imshow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, cv::_InputArray const&)’未定义的引用
这个问题解决了很久,最终是,将所有其他版本的opencv全部卸载(包括anaconda),使用homebrew安装后重新link
2、openblas
同样使用homebrew安装openblas,但是这里单独提出来,是因为,可能由于cmake版本的问题,openblas的依赖无法获得,这里我是直接在cmakelist里进行了一些修改:
cmakelist的依赖检查在如下内容
# ---[ Dependenciesinclude(cmake/Dependencies.cmake)在该文件下找到blas的检查,我是直接在apple里进行了修改,如果是linux系统,可能会同样遇到cmake版本的问题,类似修改即可:
# ---[ BLASif(NOT APPLE) set(BLAS "Atlas" CACHE STRING "Selected BLAS library") set_property(CACHE BLAS PROPERTY STRINGS "Atlas;Open;MKL") if(BLAS STREQUAL "Atlas" OR BLAS STREQUAL "atlas") find_package(Atlas REQUIRED) include_directories(SYSTEM ${Atlas_INCLUDE_DIR}) list(APPEND Caffe_LINKER_LIBS ${Atlas_LIBRARIES}) elseif(BLAS STREQUAL "Open" OR BLAS STREQUAL "open") find_package(OpenBLAS REQUIRED) include_directories(SYSTEM ${OpenBLAS_INCLUDE_DIR}) list(APPEND Caffe_LINKER_LIBS ${OpenBLAS_LIB}) elseif(BLAS STREQUAL "MKL" OR BLAS STREQUAL "mkl") find_package(MKL REQUIRED) include_directories(SYSTEM ${MKL_INCLUDE_DIR}) list(APPEND Caffe_LINKER_LIBS ${MKL_LIBRARIES}) add_definitions(-DUSE_MKL) endif()elseif(APPLE) SET(BLAS "OpenBLAS") SET(OpenBLAS_VERSION "0.2.18") SET(OpenBLAS_INCLUDE_DIRS /usr/local/Cellar/openblas/0.2.18_2/include) SET(OpenBLAS_LIBRARIES /usr/local/Cellar/openblas/0.2.18_2/lib/libopenblas.dylib) include_directories(SYSTEM ${OpenBLAS_INCLUDE_DIRS}) list(APPEND Caffe_LINKER_LIBS ${OpenBLAS_LIBRARIES}) #find_package(vecLib REQUIRED) #include_directories(SYSTEM ${vecLib_INCLUDE_DIR}) #list(APPEND Caffe_LINKER_LIBS ${vecLib_LINKER_LIBS}) #if(VECLIB_FOUND) #if(NOT vecLib_INCLUDE_DIR MATCHES "^/System/Library/Frameworks/vecLib.framework.*") #add_definitions(-DUSE_ACCELERATE) #endif() #endif()endif()
如果使用vecLib,貌似会出很多问题,之前一直坑在这里,可能的原因是10.11版本的问题,没细深究,但网上给出的方案全部不可行,所以选择openblas。
3、 python依赖
在caffe的python目录下(或者build完后的python目录下)有一个requirements.txt记录了python的依赖,直接用pip安装即可
for req in $(cat requirements.txt); do pip install $req; done
其他的问题都是细节的小问题了,如果上面的都没问题安装好的话,cmake之后就可以make all了。
最后一个小问题就是,目标build在build目录下的install文件夹下,bin需要添加环境变量,python目录建议是直接copy到python对于的site-packages下,mac下可能会出现找不到._caffe这个module,原因是python不加载dylib文件,解决方法是将python目录下的_caffe.dylib文件直接修改为_caffe.so文件就可以了。
0 0
- Mac OS X EI 10.11安装caffe注意点
- OS X EI Capitan 10.11 安装 cocoapods
- MAC OS X EI Capiton下Hadoop的详细安装
- Mac OS X EI Capitan下安装hadoop
- 使用U盘全新安装Mac OS X EI Capitan
- MAC OS X EI Capiton下Hadoop的详细安装
- 制作Mac系统安装U盘 及安装流行 (OS X EI Capitan 10.11.5)
- Mac OS X EI Capitan(10.11) vim7.4源码编译安装
- caffe mac OSX 10.11 EI Caption 安装过程
- 联想 z470 成功安装 mac os EI Capitan 10.11.6
- Mac OS X EI Capitan 10.11.16 自带php、apache,安装mysql以及升级PHP7说明
- OS X EI Captain安装Cocoapods问题
- 系统升级到Mac OS X EI Capitan ,安装cocoa pods的问题
- COMSOL5.2 —— 安装+matlab2014b(基于mac os X EI Captian)
- Mac OS X EI Caption下python的opencv的安装使用
- Mac OS X EI Capitan 10.11 上搭建环境踩坑记录
- Mac OS X 10.11 EI Capitan 的iso镜像提取
- Mac OS X EI Capitan(10.11.6) 系统下ruby on rails 连接 oracle db
- 毕业设计展示项目三:Android动漫点评管理系统,Web后台服务端JSP支撑安卓端交付,全网独创,全网唯一,版权所有
- WIN7系统怎么卸载IE浏览器?IE浏览器怎么卸载?
- Android Studio NoClassDefFoundError解决方法
- QuickHit游戏开发项目总结
- python3中的datetime相减,得到的timedelta可能有问题
- Mac OS X EI 10.11安装caffe注意点
- NT6上的获取进程全路径
- POJ 3181 Dollar Dayz 已被翻译
- ubuntu 使用securecrt vi编辑出现的问题
- CH10 面向对象思想
- hibernate总结
- zurmo(六)-表单页面
- android 应用中短信发送
- 使用Java开发高性能网站(三)