记录为centos7的4090开发机离线编译onnxruntime的过程,因为在离线的环境,所以踩了很多坑。
https://onnxruntime.ai/docs/execution-providers/TensorRT-ExecutionProvider.html
这里根据官网的推荐安装1.15 版本的onnx

因为离线环境,所以很多都是要自己手动编译安装的
onnx 源码 1.51
cmake 3.26.6 (本地环境的3.16不可以)
Python 3.8.12
cuda 11.8
cudnn 8.97.29
patch 2.7.6
TensorRT 8.6.1.6
gcc11(要求gcc>7)
patch是onnx给他的某些依赖库打补丁用的,centos中yum install patch即可,这里本地只能自己编译
python是因为系统自带的python只有可执行文件,编译过程需要头文件和python的库文件
压缩包+安装路径的截图如下


对应的环境变量设置如下
export PATH=/home/users/zyx/cmake26_install/bin:$PATH
export PATH=/home/users/zyx/python3.8/bin:$PATH
export LD_LIBRARY_PATH=/home/users/zyx/python3.8/lib:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=/home/users/zyx/python3.8/include:$C_INCLUDE_PATH

本文详细记录了一台CentOS 7系统下,配备NVIDIA 4090显卡的开发机进行离线编译ONNXRuntime 1.15与TensorRT 8.6.1.6的过程。编译过程中遇到的问题包括TensorRT版本不匹配、patch命令缺失、protobuf的GLIBCXX版本不兼容、以及TensorRT源码中弃用函数导致的编译错误。通过手动修改cmake文件忽略弃用警告、安装缺失依赖和设置环境变量,最终成功编译并安装了ONNXRuntime的GPU版本。
最低0.47元/天 解锁文章
1103

被折叠的 条评论
为什么被折叠?



