Visual Studio 2022离线源码编译onnxruntime

1. 首先参考前述文章《Visual Studio 2019源码编译cpu版本onnxruntime_xunan003的博客-CSDN博客》第1~3步,将anaconda python3.8虚拟环境copy至内网离线环境envs中。

并将下载的onnxruntime包迁移至内网固定位置;

2.查看onnxruntime/cmake/external所依赖的各依赖库是否在git clone时有下载完整,如过未下载完成,可在外网在线环境编译成功后将external整体打包(此时在线环境已经编译成功,故所有依赖库均已下载完成),替换内网离线环境对应目录;

3.VS2022开发人员命令行并cd至onnxruntime目录进行编译,编译指令为:

build.bat --build_shared_lib --config Release --skip_tests --parallel --cmake_generator "Visual Studio 17 2022"
#release多线程编译cpu

4.此时一定会报错,报错信息为

Visual Studio 2022离线源码编译onnxruntime_第1张图片

按提示网址,在在线环境下载20211102.0.zip将其放置在onnxruntime/build/Windows/Release/abseil-cpp/src/下即可,然后重新执行编译指令

5.如途中出现如下错误

Visual Studio 2022离线源码编译onnxruntime_第2张图片

我的解决方案是删除onnxruntime/cmake/external/onnx,然后在在线环境下载最新的onnx源码包,并checkout至最新release版本,我这边原来是onnx-v1.12.0,重新下载onnx-v1.13.0替换即可

onnx源码地址:https://github.com/onnx/onnx.git

git clone https://github.com/onnx/onnx.git
cd onnx
git checkout v1.13.0

将新下载的onnx复制到cmake/external/下。

删除build后重新编译,注意重新来一遍第4步即可。

你可能感兴趣的:(visual,studio,windows,ide)