首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"Make“命令使用哪个Protoc?

"Make“命令使用哪个Protoc?
EN

Stack Overflow用户
提问于 2018-09-26 09:23:34
回答 1查看 357关注 0票数 0

我正在尝试构建LAB,它可以生成健壮的面部标志。

在安装指南中,它说需要安装咖啡馆必备软件,我已经在我的AWS EC2实例上检查了CUDA和BLAS。

然后,我使用git克隆了make,并在实验室中命名的克隆的git文件夹下键入了git。

但是它返回以下错误

代码语言:javascript
复制
CXX .build_release/src/caffe/proto/caffe.pb.cc
In file included from .build_release/src/caffe/proto/caffe.pb.cc:4:0:
.build_release/src/caffe/proto/caffe.pb.h:12:2: error: #error This file was generated by a newer version of protoc which is
 #error This file was generated by a newer version of protoc which is
  ^
.build_release/src/caffe/proto/caffe.pb.h:13:2: error: #error incompatible with your Protocol Buffer headers. Please update
 #error incompatible with your Protocol Buffer headers.  Please update
  ^
.build_release/src/caffe/proto/caffe.pb.h:14:2: error: #error your headers.
 #error your headers.
  ^
In file included from .build_release/src/caffe/proto/caffe.pb.cc:4:0:
.build_release/src/caffe/proto/caffe.pb.h:23:35: fatal error: google/protobuf/arena.h: No such file or directory
compilation terminated.
Makefile:588: recipe for target '.build_release/src/caffe/proto/caffe.pb.o' failed
make: *** [.build_release/src/caffe/proto/caffe.pb.o] Error 1

上面的错误看起来像是我使用的是旧版本的libprotoc,所以如果我键入which protoc,它将返回

代码语言:javascript
复制
/home/ubuntu/anaconda3/bin//protoc

对于protoc --version,它返回libprotoc 3.5.1

对于whereis protoc,它返回

代码语言:javascript
复制
protoc: /usr/local/bin/protoc /home/ubuntu/anaconda3/bin/protoc /usr/share/man/man1/protoc.1.gz

因此,因为看起来我在/usr/local/bin中有另一个协议,所以我已经通过/usr/local/bin/protoc --version检查了它的版本,它返回

代码语言:javascript
复制
libprotoc 3.3.0

因此,我有两个问题:

1)我不知道我是否使用了make命令,哪个协议被引用。2)我不知道这个错误需要哪个版本的协议。

如何检查并获取有关上述两个问题的正确信息?

EN

回答 1

Stack Overflow用户

发布于 2018-09-26 09:34:13

使用适当的-I选项确保编译器获得了到

  1. 头文件的正确路径。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52508675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档