系统类配置(三)【ubuntu14.04或者ubuntu16.04 配置caffe】

简介: 系统类配置(三)【ubuntu14.04或者ubuntu16.04 配置caffe】

1.安装了cuda和cudnn,参考链接opencv

ubuntu14.04与ubuntu16.04两者的安装仅有小部分区别。

安装基本库:

1. sudo apt-get install libatlas-base-dev
2. sudo apt-get install libgoogle-glog-dev
3. sudo apt-get install -y build-essential cmake git pkg-config
4. sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
5. sudo apt-get install -y --no-install-recommends libboost-all-dev
6. sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev

2. 获取caffe:

1. cd
2. git clone https://github.com/BVLC/caffe.git

3.安装需要的依赖包:

1. cd caffe/python
2. sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy

安装requirement里面的包

1. sudo su
2. for req in $(cat requirements.txt); do pip install $req; done

4.修改配置文件

1. cd ~/caffe
2. cp Makefile.config.example Makefile.config
3. gedit Makefile.config
  1. 使用cuDNN # USE_CUDNN := 1 ,这里去掉#,取消注释
  2. 使用opencv3,#OPENCV_VERSION := 0 修改为: OPENCV_VERSION := 3
  3. 若要使用python来编写layer,则 #WITH_PYTHON_LAYER := 1,前面的#号去掉。
  4. 将# Whatever else you find you need goes here. 下面的
1. 1 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
2. 2 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

修改为

1. INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
2. LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

如果你的不是cuda8.0还需要将compute那一部分改一改:文件中的要求改就好了。

5.修改makefile文件:

打开makefile文件,做如下修改:

NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

替换为:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

如果你是ubuntu16.04那么你需要修改以下路径,如果是14.04则不需要:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

修改为:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

LIBRARIES += boost_thread stdc++修改为:

LIBRARIES += boost_thread stdc++ boost_regex

6.编辑/usr/local/cuda/include/host_config.h,将其中的第115行注释掉:

#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

改为:

//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

7.编译:

1. make all –j8
2. make test –j8
3. make runtest –j8

8.编译pycaffe

在caffe根目录的python文件夹下,有一个requirements.txt的清单文件,上面列出了需要的依赖库,按照这个清单安装就可以了。

在安装scipy库的时候,需要fortran编译器(gfortran),如果没有这个编译器就会报错,因此,我们可以先安装一下。

首先回到caffe的根目录,然后执行安装代码:

1. cd ~/caffe
2. sudo apt-get install gfortran
3. cd ./python
4. sudo su
5. for req in $(cat requirements.txt); do pip install $req; done

安装完成以后,再次回到caffe根目录我们可以执行:

1. cd ..
2. cd caffe
3. sudo pip install -r python/requirements.txt

就会看到,安装成功的,都会显示Requirement already satisfied, 没有安装成功的,会继续安装。

编译python接口:

make pycaffe  -j8

配置环境变量,以便python调用:

sudo gedit ~/.bashrc

export PYTHONPATH=/home/caffe/python:$PYTHONPATH添加到文件中

source ~/.bashrc

之后进入caffe/python目录下:

报错解决:

1.make: protoc:命令未找到

sudo apt-get install protobuf-c-compiler protobuf-compiler

2.报错:./include/caffe/util/db_leveldb.hpp:7:24: fatal error: leveldb/db.h: 没有那个文件或目录

sudo apt-get install libleveldb-dev

3.报错:./include/caffe/util/db_lmdb.hpp:8:18: fatal error: lmdb.h: 没有那个文件或目录#include "lmdb.h"

sudo apt install liblmdb-dev

4.报错:/usr/bin/ld: cannot find -hdf5_serial_hl

之前报这个错,最后发现ubuntu14.04不用修改下面这句

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

参考:

https://blog.csdn.net/luoshenzhisi/article/details/44780389

https://blog.csdn.net/weixin_42652125/article/details/81202540

https://www.cnblogs.com/go-better/p/7161006.html

https://github.com/BVLC/caffe/wiki/Ubuntu-16.04-or-15.10-Installation-Guide

我的微信公众号名称:深度学习与先进智能决策

微信公众号ID:MultiAgent1024

公众号介绍:主要研究强化学习、计算机视觉、深度学习、机器学习等相关内容,分享学习过程中的学习笔记和心得!期待您的关注,欢迎一起学习交流进步!

相关文章
|
18天前
|
Ubuntu Linux 网络安全
linux系统ubuntu中在命令行中打开图形界面的文件夹
在Ubuntu系统中,通过命令行打开图形界面的文件夹是一个高效且实用的操作。无论是使用Nautilus、Dolphin还是Thunar,都可以根据具体桌面环境选择合适的文件管理器。通过上述命令和方法,可以简化日常工作,提高效率。同时,解决权限问题和图形界面问题也能确保操作的顺利进行。掌握这些技巧,可以使Linux操作更加便捷和灵活。
15 3
|
2月前
|
Ubuntu Linux 测试技术
Linux系统之Ubuntu安装cockpit管理工具
【10月更文挑战第13天】Linux系统之Ubuntu安装cockpit管理工具
169 4
Linux系统之Ubuntu安装cockpit管理工具
|
29天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
45 2
|
2月前
|
网络协议 Ubuntu 网络安全
|
2月前
|
Ubuntu 编译器 计算机视觉
Ubuntu系统编译OpenCV4.8源码
【10月更文挑战第17天】只要三步即可搞定,第一步是下载指定版本的源码包;第二步是安装OpenCV4.8编译需要的编译器与第三方库支持;第三步就是编译OpenCV源码包生成安装文件并安装。
|
2月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
399 3
|
2月前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
103 1
|
1月前
|
消息中间件 Ubuntu Java
Ubuntu系统上安装Apache Kafka
Ubuntu系统上安装Apache Kafka
|
Web App开发 Ubuntu Linux
|
2月前
|
并行计算 Ubuntu Linux
Ubuntu学习笔记(五):18.04安装多版本CUDA
这篇博客文章介绍了在Ubuntu 18.04系统上如何安装和切换不同版本的CUDA,以及如何安装不同版本的cuDNN。
231 2