TensorRT icon indicating copy to clipboard operation
TensorRT copied to clipboard

Failed to build TensorRT from source.

Open jiapei100 opened this issue 4 years ago • 6 comments

Description

Failed to build TensorRT 21.07 from source.

Environment

TensorRT Version: 21.07 NVIDIA GPU: GeForce RTX 2080 Ti NVIDIA Driver Version: NVIDIA-SMI 460.84 CUDA Version: 11.3 CUDNN Version: 8.2.1 Operating System: Ubuntu 20.04 Python Version (if applicable): 3.8.10 Tensorflow Version (if applicable): 2.7.0 PyTorch Version (if applicable): 1.10.0 Baremetal or Container (if so, version): N/A

Relevant Files

Steps To Reproduce

Failed to build TensorRT 21.07.

[ 81%] Built target nvcaffeparser_static
....../TensorRT/parsers/onnx/main.cpp: In function ‘int main(int, char**)’:
....../TensorRT/parsers/onnx/main.cpp:102:47: error: ‘onnx2trt_onnx::optimization’ has not been declared
  102 |     optimizationPassNames = ::ONNX_NAMESPACE::optimization::GetAvailablePasses();
      |                                               ^~~~~~~~~~~~
....../TensorRT/parsers/onnx/main.cpp:180:84: error: ‘onnx2trt_onnx::optimization’ has not been declared
  180 |                                                                ? ::ONNX_NAMESPACE::optimization::OptimizeFixed(onnx_model, passes)
      |                                                                                    ^~~~~~~~~~~~
....../TensorRT/parsers/onnx/main.cpp:181:84: error: ‘onnx2trt_onnx::optimization’ has not been declared
  181 |                                                                : ::ONNX_NAMESPACE::optimization::Optimize(onnx_model, passes);
      |                                                                                    ^~~~~~~~~~~~
make[2]: *** [parsers/onnx/CMakeFiles/onnx2trt.dir/build.make:79: parsers/onnx/CMakeFiles/onnx2trt.dir/main.cpp.o] Error 1
make[2]: Leaving directory '....../TensorRT/build'
make[1]: *** [CMakeFiles/Makefile2:1452: parsers/onnx/CMakeFiles/onnx2trt.dir/all] Error 2
make[1]: Leaving directory '....../TensorRT/build'
make: *** [Makefile:159: all] Error 2

jiapei100 avatar Jul 31 '21 03:07 jiapei100

It looks an issue from missing onnx optmizer.

jiapei100 avatar Jul 31 '21 08:07 jiapei100

hi, jiapei. I also have the same error, did you solve it?

raccoonliukai avatar Aug 05 '21 12:08 raccoonliukai

[ 83%] Linking CXX executable onnx2trt
cd ....../TensorRT/build/parsers/onnx && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/onnx2trt.dir/link.txt --verbose=1
/usr/local/bin/g++ -Wno-deprecated-declarations -lpthread -DBUILD_SYSTEM=cmake_oss -Wall -Wno-deprecated-declarations -Wno-unused-function -O3 -DNDEBUG CMakeFiles/onnx2trt.dir/main.cpp.o -o onnx2trt  ../../third_party.protobuf/lib/libprotobuf.a third_party/onnx/libonnx.a libnvonnxparser_static.a -Wl,-Bstatic -lonnx_optimizer -Wl,-Bdynamic -lpthread -ldl third_party/onnx/libonnx_proto.a ../../third_party.protobuf/lib/libprotobuf.a /usr/local/cuda/lib64/libnvinfer.so /usr/local/cuda/lib64/libnvinfer_plugin.so 
/usr/bin/ld: CMakeFiles/onnx2trt.dir/main.cpp.o: in function `main':
main.cpp:(.text.startup+0xaf8): undefined reference to `onnx2trt_onnx::optimization::GetAvailablePasses[abi:cxx11]()'
/usr/bin/ld: main.cpp:(.text.startup+0xd16): undefined reference to `onnx2trt_onnx::optimization::OptimizeFixed(onnx2trt_onnx::ModelProto const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
/usr/bin/ld: main.cpp:(.text.startup+0x1c6a): undefined reference to `onnx2trt_onnx::optimization::Optimize(onnx2trt_onnx::ModelProto const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
collect2: error: ld returned 1 exit status
make[2]: *** [parsers/onnx/CMakeFiles/onnx2trt.dir/build.make:107: parsers/onnx/onnx2trt] Error 1
make[2]: Leaving directory '....../TensorRT/build'
make[1]: *** [CMakeFiles/Makefile2:1559: parsers/onnx/CMakeFiles/onnx2trt.dir/all] Error 2
make[1]: Leaving directory '....../TensorRT/build'
make: *** [Makefile:159: all] Error 2

Problem continues... *TensorRT doesn't consider onnx is NOW both onnx and onnx_optimizer. https://github.com/onnx/onnx-tensorrt/blob/8b6144a88534e6fd15b6ef5457f1c1a1fc153939/CMakeLists.txt has to be modified correspondingly ...

jiapei100 avatar Mar 01 '22 08:03 jiapei100

@kevinch-nv @rajeevsrao Should we add onnx_optimizer?

nvpohanh avatar Jun 15 '22 09:06 nvpohanh

This is a known issue, with the current pinned versions of onnx inside onnx-tensorrt repository this issue should not occur. We have a plan to eventually remove the dependency on ONNX optimizer so that this issue does not exist

kevinch-nv avatar Jun 15 '22 16:06 kevinch-nv

@kevinch-nv any updates? Can this be closed?

poweiw avatar May 29 '25 21:05 poweiw