NVIDIA / TensorRT

NVIDIA® TensorRT™ is an SDK for high-performance deep learning inference on NVIDIA GPUs. This repository contains the open source components of TensorRT.
https://developer.nvidia.com/tensorrt
Apache License 2.0
10.33k stars 2.09k forks source link

Questions about building python binding from source #2790

Closed dferrarigrowtech closed 1 year ago

dferrarigrowtech commented 1 year ago

Hello, I would like to install python 3.8 binding from source on my Jetson TX2. I followed this tutorial but I have several questions:

It's not correct since is a folder that contains another folder with the name of the python version (e.g. python 3.8) and that folder contains pyconfig.h. Hence /usr/include// contains a folder and not pyconfig.h

-- Configuring done
-- Generating done
-- Build files have been written to: /home/xavier/Downloads/TensorRT/python/build
[  8%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyAlgorithmSelector.cpp.o
[ 16%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyCore.cpp.o
[ 25%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyGraph.cpp.o
[ 33%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyFoundationalTypes.cpp.o
[ 41%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyInt8.cpp.o
[ 50%] Building CXX object CMakeFiles/tensorrt.dir/src/infer/pyPlugin.cpp.o
[ 58%] Building CXX object CMakeFiles/tensorrt.dir/src/parsers/pyOnnx.cpp.o
[ 66%] Building CXX object CMakeFiles/tensorrt.dir/src/parsers/pyCaffe.cpp.o
[ 75%] Building CXX object CMakeFiles/tensorrt.dir/src/parsers/pyUff.cpp.o
[ 83%] Building CXX object CMakeFiles/tensorrt.dir/src/pyTensorRT.cpp.o
[ 91%] Building CXX object CMakeFiles/tensorrt.dir/src/utils.cpp.o
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyPlugin.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyInt8.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:115: CMakeFiles/tensorrt.dir/src/infer/pyInt8.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:128: CMakeFiles/tensorrt.dir/src/infer/pyPlugin.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/src/parsers/pyOnnx.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyFoundationalTypes.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:89: CMakeFiles/tensorrt.dir/src/infer/pyFoundationalTypes.cpp.o] Error 1
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:154: CMakeFiles/tensorrt.dir/src/parsers/pyOnnx.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyGraph.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:102: CMakeFiles/tensorrt.dir/src/infer/pyGraph.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/src/pyTensorRT.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyAlgorithmSelector.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
In file included from /home/xavier/Downloads/TensorRT/python/src/parsers/pyCaffe.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:63: CMakeFiles/tensorrt.dir/src/infer/pyAlgorithmSelector.cpp.o] Error 1
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:141: CMakeFiles/tensorrt.dir/src/parsers/pyCaffe.cpp.o] Error 1
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:180: CMakeFiles/tensorrt.dir/src/pyTensorRT.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/src/infer/pyCore.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:76: CMakeFiles/tensorrt.dir/src/infer/pyCore.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/src/parsers/pyUff.cpp:18:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:167: CMakeFiles/tensorrt.dir/src/parsers/pyUff.cpp.o] Error 1
In file included from /home/xavier/Downloads/TensorRT/python/include/utils.h:22,
                 from /home/xavier/Downloads/TensorRT/python/src/utils.cpp:17:
/home/xavier/Downloads/TensorRT/python/include/ForwardDeclarations.h:35:10: fatal error: onnx/NvOnnxParser.h: No such file or directory
   35 | #include "onnx/NvOnnxParser.h"
      |          ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/tensorrt.dir/build.make:193: CMakeFiles/tensorrt.dir/src/utils.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/tensorrt.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Generating python 3.8 bindings for TensorRT 8.2.3.0
~/Downloads/TensorRT/python/packaging ~/Downloads/TensorRT/python/build ~/Downloads/TensorRT/python
~/Downloads/TensorRT/python/build ~/Downloads/TensorRT/python
~/Downloads/TensorRT/python

dferrarigrowtech commented 1 year ago

I solved by looking to this guide https://forums.developer.nvidia.com/t/tensorrt-on-jetson-with-python-3-9/196131/9

lanzani commented 9 months ago

I solved by looking to this guide https://forums.developer.nvidia.com/t/tensorrt-on-jetson-with-python-3-9/196131/9

Thank you very much!

For other, it may be helpful: I needed tensorrt for python 3.8.10 on jetson nano, but I couldn't find the right python header in the link provided. So after a Google search, I used libpython3.8-dev_3.8.10-0ubuntu1~20.04.8_arm64.deb and it worked.