dlunion/tensorRTIntegrate

ubuntu make error

Opened this issue · 10 comments

你好
我用protobuf3.8.0编译 error onnx_ONNX_NAMESPACE-ml.pb.cpp is not a member of ‘google::protobuf::internal::WireFormat’
然后使用protobuf3.13.3编译 onnx_ONNX_NAMESPACE-ml.pb.h:368: undefined reference to `google::protobuf::internal::AssignDescriptors(google::protobuf::internal::DescriptorTable const*)'好像版本太新了。
请问protobuf的版本应该是什么?
我本机编译的onnx-tensorrt7得不到src/onnx/下边所有的.h 如onnx_ONNX_NAMESPACE-ml.pb.h onnx-operators_ONNX_NAMESPACE-ml.pb
@dlunion @hopef

hopef commented

我的系统是ubuntu16.04 使用3.11.4还是会报objs/onnx/onnx_ONNX_NAMESPACE-ml.pb.o: In function ONNX_NAMESPACE::AttributeProto::GetMetadataStatic()': /disk3/workspace/trt/tensorRTIntegrate-master/src/onnx_parser/OnnxAttrs.cpp:42: undefined reference to google::protobuf::RepeatedField::~RepeatedField()'
collect2: error: ld returned 1 exit status
Makefile:53: recipe for target 'workspace/trtrun' failed
make: *** [workspace/trtrun] Error 1
的错误 请问你的onnx_ONNX_NAMESPACE-ml.pb和onnx-operators_ONNX_NAMESPACE-ml.pb是怎么获得的
@hopef

@dlunion 你好能帮我解答下我上边的疑问么 谢谢

请问你们的项目是依赖于tensorrt6的么? 我加了cmake .. -DONNX_NAMESPACE=onnx2trt_onnx编译指令但是生成的还是onnx-operators_onnx2trt_onnx-ml.pb.h没有生成onnx-operators_ONNX_NAMESPACE-ml.pb.h
@hopef

hopef commented

operators_onnx2trt_onnx-ml.pb.h就是onnx-operators_ONNX_NAMESPACE-ml.pb.h,是同一个文件,仅仅是我生成的时候-DONNX_NAMESPACE=onnx2trt_onnx没有写造成的

hopef commented

项目不是依赖tensorRT6,仅仅是onnx-tensorrt部分是6.0的
但是这个项目可以使用于7.0、7.1、6.0

hopef commented

也就是仅仅解析器是6.0的。当初调研过最新的解析器,应该是存在很多问题,例如不兼容6.0,所以没有使用

谢谢你的解答 我下载onnx-tensorrt6.0在编译看看 很棒的项目能让我们快速上手编译自己的onnx plugin

谢谢你的帮助 已经编译成功了. @hopef