1. caffe.pb.h丢失问题

错误代码如图:

  1. zhuoshi@zhuoshi-SYS-7048GR-TR:~/ZSZT/Geoffrey/caffe/caffe-master$ make all j8
  2. PROTOC src/caffe/proto/caffe.proto
  3. CXX .build_release/src/caffe/proto/caffe.pb.cc
  4. CXX src/caffe/layer.cpp
  5. In file included from ./include/caffe/common.hpp:19:0,
  6. from ./include/caffe/blob.hpp:8,
  7. from ./include/caffe/layer.hpp:8,
  8. from src/caffe/layer.cpp:1:
  9. ./include/caffe/util/device_alternate.hpp:34:23: fatal error: cublas_v2.h: No such file or directory
  10. compilation terminated.
  11. Makefile:591: recipe for target '.build_release/src/caffe/layer.o' failed
  12. make: *** [.build_release/src/caffe/layer.o] Error 1

解决方法

解决办法参考这个博客:http://blog.csdn.net/xmzwlw/article/details/48270225, 用protoc从caffe/src/caffe/proto/caffe.proto生成caffe.pb.h和caffe.pb.cc.

但是有个问题需要注意,此处不能使用'~', 而要使用完整路径

2. 未定义的引用, undefined reference to 'cblas_scopy'



参考这篇博客,https://blog.csdn.net/sdlypyzq/article/details/85237512, 的确是搞笑, 我也在open后面多了个空格,去掉就可以了.

3. Protobuf 错误

报错内容: PROTOC (python) src/caffe/proto/caffe.proto python/caffe/_caffe.cpp:1:52: fa

原因: caffe自带的requirement.txt内容如下, 只规定protobuf>=2.5.0, 并没有规定上限,所以我直接conda install protobuf导致版本过高



解决方法:

conda install protobuf=3.2


更新时间: 2019/06/10

4. libcblas.a错误



在cmake后, 修改build文件夹下的CMakeCache.txt

5. 为定义的引用libopencv_highgui.so.2.4.9



解决办法:用sudo su, 参考自链接

6. FlagRegisterer问题



解决办法:重新安装 GLog & GFlags 的安装

1)安装 GFlags

  1. git clone https://github.com/gflags/gflags.git
  2. cd gflags
  3. mkdir build && cd build
  4. cmake .. -DGFLAGS_NAMESPACE=google -DCMAKE_CXX_FLAGS=-fPIC ..
  5. make -j4
  6. sudo make install

2)安装 GLog:

  1. git clone https://github.com/google/glog
  2. cd glog
  3. ./autogen.sh
  4. ./configure CPPFLAGS="-I/usr/local/include -fPIC" LDFLAGS="-L/usr/local/lib"
  5. make -j8
  6. sudo make install

7. pycaffe找不到Python.h文件

添加环境变量即可

export CPLUS_INCLUDE_PATH="/opt/anaconda/envs/caffe_27/include/python2.7:$CPLUS_INCLUDE_PATH"

8. gflags命名空间问题

/home/geoffrey/caffe/include/caffe/common.hpp(31): error: "gflags" has already been declared in the current scope,

可以修改这个地方, 进行注释:

  1. // #ifndef GFLAGS_GFLAGS_H_
  2. namespace gflags = google;
  3. // #endif // GFLAGS_GFLAGS_H_

具体参考: stackoverflow

9. __builtin_is_constant_evaluated未定义

报错内容:/usr/include/c++/9.1.0/bits/stl_function.h(437): error: identifier "__builtin_is_constant_evaluated" is undefined

更新时间:2019.07.17



原因, gcc版本太高,我的是系统滚动更新的gcc9.1版本, 换成gcc6好了.

对于cmake指定gcc和g++版本方法:

  1. SET(CMAKE_C_COMPILER /usr/bin/gcc-6)
  2. SET(CMAKE_CXX_COMPILER /usr/bin/g++-6)

10. error: token ""CUDACC_VER is no longer supported



解决办法, https://github.com/BVLC/caffe/issues/5994, upgrade boost from 1.62 to 1.65,

  1. conda install boost=1.65
  2. conda install boost-cpp=1.65

11. /usr/include/c++/9.2.0/bits/stl_function.h(437): 未定义"__builtin_is_constant_evaluated"

更新时间: 2019/11/07



原因: gcc版本太高,如图,cuda只支持8以下版本:



解决办法:

指定一个低版本gcc,g++:


caffe编译错误记录的更多相关文章

  1. C++ 编译错误记录

    C++ _ZSt28__throw_bad_array_new_lengthv1 编译错误 出现场景:类似代码 vector<vector<int>> grid = {{1, ...

  2. VeloView源码编译错误记录——VS manifest

    编译环境 Win7 Visual Studio 2008 Win32 VeloView依赖关系 1)底层 Python Qt pcap boost eigen 2)中层 liblas: boost P ...

  3. Maven编译错误记录:Some Enforcer rules have failed

    一.错误信息 添加httpclient与httpcore依赖后编译Maven报错. 错误信息如下: Failed to execute goal org.apache.maven.plugins:ma ...

  4. Unity 编译错误记录

    1. 相关代码: NetworkView.RPC ("ReceiveMessage", RPCMode.All, message); 编译输出: Assets/cs/ClientC ...

  5. cocos2dx 中文路径编译错误记录

    '/Q' 不是内部或外部命令,也不是可运行的程序1> 或批处理文件.1> 'y' 不是内部或外部命令,也不是可运行的程序1> 或批处理文件.1>C:\Program Files ...

  6. Caffe 工程的一些编译错误以及解决方案

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51371936 整理一下最近遇到caff ...

  7. 记录一次使用VS2015编译错误的原因查找(boost+gdal)

    编译错误说明 在一个解决方案中的项目A中使用到了boost,完全没有问题.在项目B中也使用了boost库,编译的时候就产生了一堆错误. 原因查找 两个项目通过对比,唯一的不同就是项目B使用了gdal库 ...

  8. ubuntu16.04, Matlab2016b caffe编译安装

    在Ubuntu上编译安装caffe还是个比较蛋疼的事,有时候会莫名其妙的碰到很多库的问题,这篇文章就把我在Ubuntu上编译安装caffe的过程和遇到的问题大致记录一下. 1.安装opencv htt ...

  9. 开发错误记录8:Unable to instantiate application com

    开发错误记录8:Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication 这是因为在And ...

随机推荐

  1. Tomcat系列(6)——Tomcat处理一个HTTP请求的过程

    Tomcat的架构图   图三:Tomcat Server处理一个HTTP请求的过程 处理HTTP请求过程 假设来自客户的请求为:http://localhost:8080/test/index.js ...

  2. GIT-windows系统下Gitblit的使用方式

    GIT-windows系统下Gitblit的正确打开方式 1. 打开页面. 在配置好Gitblit后,打开可视化界面. 2. 创建用户 点击右上角添加用户,进入明细页面,填写常规信息. 创建用户(账号 ...

  3. LNMP组合环境

    Mysql----二进制安装: 下载rpm包 创建MySQL用户: useradd -s /sbin/nologin mysql -M 这里遇到无法创建用户,提示:useradd: group mys ...

  4. 1、jQuery的使用入门

    一.创建一个WEB项目,在WebRoot下新建一个Jscript文件夹,并将jQuery中的jquery-3.1.1.min.js文件复制过来. 二.用<script>标签引入jQuery ...

  5. 浅入深出Vue:前言

    浅入深出Vue系列文章 之前大部分是在做后端,后来出于某些原因开始接触Vue.深感前端变化之大,各种工具.框架令人眼花缭乱.不过正是这些变化,让前端开发更灵活. 博主在刚开始时,参考官网的各个步骤以及 ...

  6. module.ngdoc

    译自Angular's module docs 1.模块 大部分的应用都有一个主要的方法来实例化,链接,引导.angular应用没有这个方法,而是用模块声明来替代. 这种方式的优点: *程序的声明越详 ...

  7. Balanced Number HDU - 3709

    题目大意:若一个数以某个位置为支点,支点左右的加权和相同,这样的数被称为平衡数,求区间内平衡数的个数 思路:枚举支点位置,针对每个支点进行数位DP,但是0比较特殊,假设该数的长度为len,枚举len次 ...

  8. python&django 实现页面中关联查询小功能(基础篇)

    效果 实现效果图如下,根据过滤条件查询相关信息. 知识点 1.配置URL,在路由中使用正则表达式 2.过滤查询 代码 setting.py from django.contrib import adm ...

  9. Mac环境下Redis的安装

    1.下载 官网下载地址:https://redis.io/download,选择对应的下载版本,我下载的是4.0.12 2.安装 1)下载文件解压后复制到/usr/local/目录下(快速找到路径小技 ...

  10. [SDOI2009]HH的项链-树状数组/线段树

    树状数组: #include<bits/stdc++.h> using namespace std; ; int id[maxn],tree[maxn],vis[maxn],num[max ...