编译环境:
win10、VS2019、cuda11.4、onnxruntime1.13.1
报错问题:
编译protobuf-lite时报一大堆错,导致onnxruntime.dll无法编译通过
原因分析:
onnxruntime编译时默认使用protobuf-lite,需要改为使用protobuf
解决方法:
修改cmake文件夹中的CMakeLists.txt,把第89行的【onnxruntime_USE_FULL_PROTOBUF】配置值由OFF改为ON,重新编译即可无报错生成onnxruntime.dll
附上编译步骤:
1、下载onnxruntime源码
git clone -b v1.13.1 https://github.com/microsoft/onnxruntime.git
2、 使用x64本机命令提示符,转到onnxruntime源码目录,执行编译命令
.\build.bat --skip_tests --use_cuda --config Release --build_shared_lib --parallel --cuda_home "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4" --cudnn_home "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4" --cuda_version 11.4 --cmake_generator "Visual Studio 16 2019"