深度学习笔记------linux下配置安装caffe-cpu only模式
本文适合初学者学习配置caffe的最简单方法。这是我在看了网上各种大神的方法后总结的最傻瓜式的配置方法了。
本人也是在不断地配置caffe过程中受打击与成长@。@
第一步、配置caffe所需的依赖环境
打开终端。
sudo apt-get install git libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev libatlas-base-dev python-dev libgflags-dev libgoogle-glog-dev liblmdb-dev
第二步、升级gcc和g++至4.9
这一步主要是给配置cuda做准备的,不过最好还是更新一下。
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9
sudo apt-get install g++-4.9
sudo su
cd ../../usr/bin
ln -s /usr/bin/g++-4.9 /usr/bin/g++ -f
ln -s /usr/bin/gcc-4.9 /usr/bin/gcc -f
之后,gcc与g++默认为4.9版本,可通过gcc --version查询。
第三步、编译caffe
在github上下载caffe源码,网址https://github.com/BVLC/caffe
下载后提取到主文件夹目录下。
cd caffe
cp Makefile.config.example Makefile.config
打开Makefile.config修改CPU_ONLY=1,将前面的#号删除即可。
保存并退出。
make -j8 #(j后面为你所调用的CPU的线程数量)
make test
make runtest
这时如果没报错,那奏成功啦。
第四步、安装anaconda并配置python接口
anaconda官网上有免费下载地址和安装指令,灰常滴简单。https://www.continuum.io/downloads
更改环境变量。
sudo gedit /etc/profile
export PATH=/home/irondroid/anaconda2/bin:$PATH
export PYTHONPATH=/home/irondroid/caffe/python:$PYTHONPATH
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
source /etc/profile
cd caffe
make pycaffe
第五步、完成caffe安装
重启电脑后输入python,如果出现anaconda路径那就说明anaconda安装成功啦。然后
>>>import caffe
如果出现protobuf之类的什么错误
sudo chmod 777 -R anaconda2
conda install protobuf
这样既可
然后再
>>>import caffe
>>>
证明安装成功。
第六步、重新编译caffe
如果遇到新的情况需要重新编译caffe,在make clean之后很可能出现编译失败的情况,这时多数情况是出现
cannot find #include "caffe/proto/caffe.pb.h" #1761
如果出现上述的error,需要以下的几步简单操作,我在github上面搜到的
cd caffe
protoc src/caffe/proto/caffe.proto --cpp_out=.
mkdir include/caffe/proto
mv src/caffe/proto/caffe.pb.h include/caffe/proto
然后再make,大功告成。
第七步、配置cuda和cudnn
我还没配成功,表看啦@*@
深度学习笔记------linux下配置安装caffe-cpu only模式的更多相关文章
- solr学习笔记-linux下配置solr(转)
本文地址: http://zhoujianghai.iteye.com/blog/1540176 首先介绍一下solr: Apache Solr (读音: SOLer) 是一个开源.高性能.采用Jav ...
- 2020年Yann Lecun深度学习笔记(下)
2020年Yann Lecun深度学习笔记(下)
- Java学习笔记——Linux下安装配置tomcat
朝辞白帝彩云间,千里江陵一日还. 两岸猿声啼不住,轻舟已过万重山. ——早发白帝城 首先需要安装配置JDK,这里简单回顾下.Linux下用root身份在/opt/文件夹下创建jvm文件夹,然后使用ta ...
- Python学习笔记-Linux下安装Python
Linux系统CentOS 1.安装依赖组件 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel s ...
- MongoDB学习笔记—Linux下搭建MongoDB环境
1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...
- Jmeter(十)Linux下配置安装Jmeter及执行测试任务
一.安装JDK7.0版本 1.先卸载服务器自带的jdk软件包 # java -version #查看服务器是否安装过 # rpm -qa |grep gcj #查看服务器安装的jdk软件包信息 # y ...
- LINUX学习笔记——LINUX下EXP命令全库备份数据库文件
LINUX下EXP命令全库备份数据库文件 1)建立备份目录,目录操作权限授权给Oracle用户 mkdir /backup --创建backup文件夹 cd / --进入cd语句 ls -l ...
- qt linux下配置安装
linux版本: qt卸载: 1. 先找到qt的安装位置: 2.然后执行其下面的文件MaintenanceTool: 3. 然后会出现图形界面: 卸载完成. 安装qt 下载地址: https://ww ...
- Linux 程序设计学习笔记----Linux下文件类型和属性管理
转载请注明出处:http://blog.csdn.net/suool/article/details/38318225 部分内容整理自网络,在此感谢各位大神. Linux文件类型和权限 数据表示 文件 ...
随机推荐
- error LNK1281: 无法生成 SAFESEH 映像 LNK2026 模块对于 SAFESEH 映像是不安全的 VS2015 /win10
平台 VS2015 /win10 错误 LNK1281 无法生成 SAFESEH 映像. 错误 LNK2026 模块对于 SAFESEH 映像是不安全的. 将 release 改成 debug
- 重构第28 天 重命名bool方法(Rename boolean method)
详解:本文中的”为布尔方法命名”是指如果一个方法带有大量的bool 参数时,可以根据bool 参数的数量,提取出若干个独立的方法来简化参数. 理解: 我们现在要说的重构并不是普通字面意义上的重构,它有 ...
- 【循序渐进学Python】2. Python中的序列——列表和元组
序列概览 在Python中有六种内建的序列:列表.元组.字符串.Unicode字符串.buffer对象和xrange对象.在这里暂时只讨论列表和元组.列表和元组的主要区别在于:列表可以修改,元组(不可 ...
- AC自动机---病毒侵袭持续中
HDU 3065 题目网址: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=110773#problem/C Description 小t ...
- ahjesus解决win下U盘无法写入的问题
可能是由于不同品牌的U盘出厂时磁盘分区和格式化方式不同而引起的兼容性问题.解决方案如下 启动cmd.输入diskpart,启动DISKPART工具 在DISKPART窗口中输入以下命令: >li ...
- 【OpenCV & CUDA】OpenCV和Cuda结合编程
一.利用OpenCV中提供的GPU模块 目前,OpenCV中已提供了许多GPU函数,直接使用OpenCV提供的GPU模块,可以完成大部分图像处理的加速操作. 基本使用方法,请参考:http://www ...
- C++ 面向对象的三个特点--继承与封装(二)
顺着上一篇的内容,我们继续来了解继承的基本知识. 派生类的构造函数和析构函数 派生类继承了基类的成员,但是不能继承基类的构造函数和析构函数,首先,我们了解构造函数和析构函数的执行顺序是当我们创建一个派 ...
- 养只爬虫当宠物(Node.js爬虫爬取58同城租房信息)
先上一个源代码吧. https://github.com/answershuto/Rental 欢迎指导交流. 效果图 搭建Node.js环境及启动服务 安装node以及npm,用express模块启 ...
- .NET下的并行开发(案例代码)
以下主要是通过一个报表处理程序来说明并行开发的方式.对于数据冲突和共享,可以通过对象数组解决.设计到并行的核心代码已用红色标出.在并行程序的处理上,需要把原来串行的子公司变成一个一个类的对象,让所有的 ...
- ruby语言是什么东西
1.简介 Ruby是日本的Yukihiro Matsumoto写的,简单易学的面向对象的脚本语言,像perl一样,有丰富的文字处理.系统管理等丰富 功能,但是ruby要简单,容易理解和扩充.跟p ...