安装CaffeOnSpark过程中遇到的问题及解决方案
安装教程来自 http://blog.csdn.net/sadonmyown/article/details/72781393
首先,我使用的节点环境是ubuntu 16.04.1,事先 成功安装了spark和hadoop,版本分别为spark-2.11和hadoop-2.7.3
问题 1:按照教程一步步进行到编译Caffe步骤时,出现如下错误:

Step 1
在Makefile.config文件的第95行,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。
1 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
2 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
Step 2
在Makefile文件的第181行,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码。
1 LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
2 LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
问题 2:编译CaffeOnSpark时,出现如下错误:

同问题1解决方式相同,不同的是修改的文件是CaffeOnSpark/caffe-public下面的Makefile.config和Makefile文件,此处无须赘述!
继续编译,仍有错误出现,最终导致编译失败,部分截图如下所示:


根据错误发现是节点缺少Protobuf依赖,因此需要安装对应hadoop版本的Protobuf,安装过程我参考了 http://blog.csdn.net/blue_it/article/details/53996216 的安装教程,安装过程中主要注意有两点:
1.版本号必须对应,否则很可能出现不可预料的错误
2.编译过程中需要使用sudo权限,以免出现权限不够的情况
其他相关问题教程中也会有提及。

此处问题我上网搜了很多问题,最终是把Caffe目录下的Makefile.config 文件拷贝到了CaffeOnSpark/caffe-public目录下,执行
make clean make build
再重新编译,最终成功了。

希望对遇见相同问题的你有所帮助!
安装CaffeOnSpark过程中遇到的问题及解决方案的更多相关文章
- 总结安装webpack过程中遇到的错误及解决方案
1.安装不成功的报错: 解决方案:清除缓存 2.打包不成功: 解决方案:填写打包路径时的“__dirname”有两个下划线 3.打包报错: 解决方案:正确填写路径为“./style.css”
- 在Linux下安装PHP过程中,编译时出现错误的解决办法
在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法 configure: error: libjpeg.(a ...
- 安装PHP过程中,make步骤报错:(集合网络上各种解决方法)
安装PHP过程中,make步骤报错:(集合网络上各种解决方法) (1)-liconv -o sapi/fpm/php-fpm /usr/bin/ld: cannot find -liconv coll ...
- Jenkins(3)- 安装Jenkins过程中遇到问题的排查思路
如果想从头学起Jenkins的话,可以看看这一系列的文章哦 https://www.cnblogs.com/poloyy/category/1645399.html 安装Jenkins过程中,可能会遇 ...
- canal-adapter1.1.14最新版本安装的过程中出现的NullPointerException异常
记录一下我在安装 canal-adapter1.1.14最新版本安装的过程中出现的NullPointerException异常 以下是我的canal-adapter/logs文件夹内adapter.l ...
- NVidia Jetson Ubuntu 18.04 安装ROS过程中运行sudo rosdep init指令出错
参考:https://www.cnblogs.com/xuhaoforwards/p/9399744.html 安装ROS过程中运行sudo rosdep init后,出现如下错误LOG: ERROR ...
- HOWTO - Basic MSI安装包在安装运行过程中如何获取完整源路径
有朋友问到如何在一个Windows Installer安装包中获取安装包源路径,就是在安装包运行过程中动态获取*.msi所在完整路径. 这个问题分两类,如果我们的安装包只是一个*.msi安装文件,那么 ...
- mysql安装过程中出现的错误问题解决方案
最近在学Django,因为与数据库相关,所以我下载并安装了MySQL,安装的过程真的是一把辛酸泪啊.安装过后,查看是否可以使用,出现了cann't connect to mysql server这个错 ...
- Python安装scrapy过程中出现“Failed building wheel for xxx”
https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml Python安装scrapy库过程中出现“ Failed building wheel for xxx ...
随机推荐
- ace-editor线上代码编辑器
package.json { "name": "vue-cli", "version": "1.0.0", " ...
- javascript 之 第七章第一节(递归)
先举例: function factorial(num) { ) { return num; } else { ); } } //输出120 //进一步去思考有名字的函数,且名字不会有变化的情况下,这 ...
- Autowired(required=true)
问题原因 没有实现类的接口上添加了@Autowired注解 问题解决 删掉@Autowired注解 bug详情 Description: Field userDAO in com.crab.servi ...
- scala链接mysql
方法一:链接并操作mysql //链接Mysqlval driver = "com.mysql.jdbc.Driver"val url = "jdbc:mysql://1 ...
- Qt如何实现不规则弹窗
1.无边框: 2.放图: 3.重写鼠标函数(问题是:怎么确定不规则弹窗的响应范围?挖坑待填)
- python - Random常用方法记录
import random # range [a,b) 不包含b # 获取随机整数 # randrange [a,b) 不包含b a = random.randrange(0, 101, 5) # E ...
- CAS工程用redis集群存储票据ticket Spring整合
maven jar包版本: <dependency> <groupId>redis.clients</groupId> <artifactId>jedi ...
- vue--js里跳转页面
我们知道在vue里进行页面跳转的话,我们使用<router-link>这个标签 那在构造函数里我们不能直接操纵DOM元素,我们又该如何进行页面跳转呢? 步骤1: 我们先在DOM里设置三个按 ...
- Struts 2 执行流程 配置信息
Struts 2 执行流程 首先,浏览器访问,经过Filter,Filter从src/struts.xml中寻找命名空间和action的名字,获取action类,从方法中拿到返回值,接着从result ...
- JSR107缓存规范
Java Caching定义了5个核心接口,分别是CachingProvider, CacheManager, Cache, Entry 和 Expiry. CachingProvider定义了创建. ...