Mac OS X10.10 下安装caffe

Mac OS X10.10 下安装caffe

surgewong@gmail.com

在Linux学习 Caffe【1】有一段时间了,也渐渐地对 Caffe 的框架有了一点认识。在 Linux 下学习 Caffe 的人很多,网上的参考资料也想对比较多。安装配置教程很多,出了问题都相对比较好解决。前两天老大弄了一台Mac 笔记本过来,叫我帮他在 Mac上安装 Caffe。穷屌丝以前没有玩过 Mac 笔记本,冲着对 Mac 的这份好奇,开始痛苦的安装之旅。

一、Mac下软件安装方式

习惯了Linux下的 sudo apt-get install XXXX 的软件安装方式,对 Mac下 brew install XXXX 很容易上手。不过之前对 Mac 几乎没有任何基础,要了解其中的一些特定术语,比如:formula,framework还是有些困难的。多用几次,就开始慢慢对其有些了解。brew 的方式安装是通过一个叫着 homebrew【2】 软件包管理工具来实现的。围绕 brew 的安装的常用命令有:

brew install XXXX –> 安装软件包或者相应的库

brew uninstall XXXX –> 卸载软件包或者相应的库

brew update –> 更新 Homebrew自己

brew upgrade –> 升级所有可以升级的软件(通过brew方式安装的)

brew list –> 列出所有通过 brew 安装的软件

brew doctor –> 诊断是否安装成功

brew edit XXXX –> 编辑 XXXX (Formula)相应的软件配安装置文件

brew help –> 列出常用命令

二、 安装 Caffe 必要的依赖

参考官方教程【3】,Caffe需要安装的内容有:

CUDA 最好是 6.5 版本

BLAS 可以通过ATLAS,MKL,OpenBLAS 提供

Opencv 版本大于或等于 2.4

Boost 版本大约或等于 1.5,, 如有必要还需要提供 python 版本

glog, gflags, protobuf, leveldb, snappy, hdf5, lmdb

下面是非必需的:

Python Python 2.7 numpy 版本大于或等于1.7

Matlab 提供 mex 编译器

三、CUDA 及 BLAS 的安装

1.CUDA 的安装: Mac 下面 CUDA 的安装相比 Linux 要简单很多,直接下载【4】,然后直接双击,按照提示直接安装就可以,其他的相关设置可以参考文档【5】。

主要是需要设置 cuda 相关的路径,可以在 /etc/profile 中设置下面环境变量:

export PATH=/Developer/NVIDIA/CUDA-6.5/bin:$PATH

export DYLD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-6.5/lib:$DYLD_LIBRARY_PATH

2.Atlas 的安装: Mac 系统下面的 vecLib 框架(Accelerate Frame)本身就集成了 Atlas的实现,在编译Caffe的时候只需要指定相应头文件所在的目录就可以。

3.OpenBlas 的安装: 使用 brew 安装 就可以。(直接使用brew安装可能有些问题,后面会介绍)

brew install homebrew/science/openblas —> 直接安装

brew install –build-from-source homebrew/science/openblas –> 通过编译源码安装

4.MKL的安装: Intel MKL 是一个商业化针对CPU优化的一个库,可以使用学生免费版,可以到intel官网【6】注册一个帐号,下载相应的mac版本的 MKL。

四、 OpenCV, glog, gflags, protobuf, leveldb, snappy, hdf5, lmdb 的安装

从Mac 10.9 开始 系统默认的C/C++ 编译器是 clang/clang++ 而不是 gcc/g++,相应使用的C++ 标准库是 libc++ (主要是针对 C++ X11)。在Caffe中很多依赖库主要是基于libstdc++ 库,所以使用默认编译选项时,很容易出现:undefined symbols for architecture x86_64 的错误。要解决这个问题,就不必须,保证其相应的依赖本身就是基于 libstdc++ 来编译安装的。

首先可以通过 brew 的方式来安装上述依赖,不过需要选择通过源码安装,并且在编译时选择使用 libstdc++库进行编译。使用这种方式可以通过编辑 相应的 homebrew formula。前面提到的 openblas 最好也通过该方式进行编译安装。对于每个需要安装的Homebrew formula:

boost snappy leveldb protobuf gflags glog szip lmdb homebrew/science/opencv

使用 brew edit FORMULA(例如 brew edit boost) 加入相应的环境 ENV定义:

一定要成为你工作最大的资产。

Mac OS X10.10 下安装caffe

相关文章:

你感兴趣的文章:

标签云: