最便捷的caffe编译方法 ---- cmake+anaconda虚拟环境

本文介绍了如何使用Anaconda虚拟环境和CMake简化Caffe的编译过程,以避免依赖冲突和环境配置问题。在Manjaro Linux上测试,但适用于其他Linux和Windows系统。提供了一个预配置的conda环境.yml文件,简化环境创建,并分享了编译Caffe的详细步骤,包括修改虚拟环境路径、手动添加CUDA路径等。同时,文章提及了编译过程中可能遇到的问题及解决方案。
摘要由CSDN通过智能技术生成

caffe编译是一个繁琐个过程, 或多或少会遇到各种各样的问题, 如我caffe编译错误记录记录了遇到过得一部分问题. 原因是因为每个依赖如openblas, protobuf都需要编译特定版本, 每台电脑装的依赖库各不相同, 环境变量也有冲突的情况(如system和anaconda). 于是我一直想找一种简单方便的caffe编译方法, 可以避免上述的问题. 也就有了今天的内容, 使用anaconda虚拟环境编译caffe.


一些说明:
  1. anaconda虚拟环境可以把环境和系统隔离, 相当于浓缩版/usr/lib+/usr/include, 在环境中安装包使用conda install {包名称}=版本号命令, 可以很方便的修改环境依赖;
  2. 测试系统是Manjaro Linux, 但是使用anaconda+cmake, 应该和系统没有关系. 即使用其他linux系统或者windows也可以;
  3. anaconda环境名称为caffe_27. python 3在编译完成caffe后, pychaffe编译出错. 于是换成了python2.7. python3我会后续补充;
  4. 我的caffe是添加了多标签的部分, 即label可以有多个, 可以直接用我修改好的caffe开始编译;
  5. cuda任然需要本地安装, 我的是Manjaro Linux, 使用pacman -S cuda安装.
  6. 项目整体只在本地测试过, 如果有问题还请指出, 我会进一步完善.
  7. NCCL, GPU默认开启,如果需要关闭可以更改 CmakeList.txt相关位置.

>>>>> GitHub项目链接


1. 编译过程说明:

(1) 生成anaconda虚拟环境

我编译完成后, 把用到的conda虚拟环境输出成了.yml文件. 重新编译时, 可以使用conda env create -f caffe_36.yml生成和我一模一样的虚拟环境,而不需要一个一个包重新安装.

(2) 激活虚拟环境

环境名我定的名字是caffe_ 27, 代表python版本是2.7(python3.6环境编译可以通过, 但是pycaffe编辑通过, 于是后来换成了python 2.7, ), 用于编译caffe环境. 如果使用第一步命令生成环境, 那么可以运行一下source命令激活.
source activate caffe_27

(3) cmake

不使用make, 而是用camke进行编译, 一方面可以跨平台, 另一方面cmake更加通俗易懂.
需要进行如下一些修改:

<1> 修改虚拟环境路径:

1430038-20190623125903295-883994183.png

<2> 如果cuda有问题, 手动添加cuda路径:

1430038-20190623130107847-1768186620.png

执行如下命令:

mkdir build 
cd build 
cmake ..

1430038-20190625194244408-886675975.png

camke过程如图:

-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值