文章目录

  • 仓库下载
  • 编译
    • GPU
    • TensorRT
  • install
  • 参考

仓库下载

git clone --depth=1 --branch v1.12.1 https://github.com.cnpmjs.org/microsoft/onnxruntime.git

注意:需要更换国内镜像源

编译

GPU

./build.sh --skip_tests --use_cuda --config Release --build_shared_lib --parallel --cuda_home /usr/local/cuda-11.3 --cudnn_home /usr/local/cuda-11.3

其中的use_cuda表示你要使用CUDA的onnxruntime,cuda_home和cudnn_home均指向你的CUDA安装目录即可。

onnxruntime版本和cuda、cudnn版本要对应,具体参考官方推荐https://onnxruntime.ai/docs/execution-providers/CUDA-ExecutionProvider.html。

TensorRT

Tensorrt安装参考这里。

./build.sh \--parallel 8 \--use_cuda \--cuda_version=11.1 \--cuda_home=/usr/local/cuda \--cudnn_home=/usr/local/cuda \--use_tensorrt --tensorrt_home=/usr/local/lib/python3.8/dist-packages/tensorrt \--build_shared_lib --enable_pybind \--build_wheel --update --build \--config Release

注意

  1. cmake版本过低会导致编译失败;
  2. 科学上网问题。编译过程中会链接其他github仓库,需要手动添加镜像源。
cd ${your git repo root}
cd .git
vim config

修改为:

[core]repositoryformatversion = 0filemode = truebare = falselogallrefupdates = trueignorecase = trueprecomposeunicode = true
[remote "origin"]url = https://github.com.cnpmjs.org/microsoft/onnxruntime.gitfetch = +refs/tags/v1.7.0:refs/tags/v1.7.0

也不多,大概几十个把

编译成功

[ 98%] Building CXX object CMakeFiles/onnxruntime_providers.dir/Users/xxx/Desktop/third_party/library/onnxruntime/onnxruntime/contrib_ops/cpu/skip_layer_norm.cc.o
[ 98%] Building CXX object CMakeFiles/onnxruntime_providers.dir/Users/xxx/Desktop/third_party/library/onnxruntime/onnxruntime/contrib_ops/cpu/tokenizer.cc.o
[100%] Building CXX object CMakeFiles/onnxruntime_providers.dir/Users/xxx/Desktop/third_party/library/onnxruntime/onnxruntime/contrib_ops/cpu/trilu.cc.o
[100%] Building CXX object CMakeFiles/onnxruntime_providers.dir/Users/xxx/Desktop/third_party/library/onnxruntime/onnxruntime/contrib_ops/cpu/unique.cc.o
[100%] Building CXX object CMakeFiles/onnxruntime_providers.dir/Users/xxx/Desktop/third_party/library/onnxruntime/onnxruntime/contrib_ops/cpu/word_conv_embedding.cc.o
[100%] Linking CXX static library libonnxruntime_providers.a
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libonnxruntime_providers.a(dft.cc.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libonnxruntime_providers.a(window_functions.cc.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libonnxruntime_providers.a(dft.cc.o) has no symbols
/Library/Developer/CommandLineTools/usr/bin/ranlib: file: libonnxruntime_providers.a(window_functions.cc.o) has no symbols
[100%] Built target onnxruntime_providers
[100%] Building C object CMakeFiles/onnxruntime.dir/generated_source.c.o
[100%] Linking CXX shared library libonnxruntime.dylib
[100%] Built target onnxruntime
2021-04-15 22:39:10,495 util.run [DEBUG] - Subprocess completed. Return code: 0
2021-04-15 22:39:10,496 build [INFO] - Build complete

install

cd ./build/Linux/release
make install

参考

https://zhuanlan.zhihu.com/p/411887386

Ubuntu下的onnxruntime(c++)编译相关推荐

  1. ubuntu java反编译,[原创]Ubuntu下简单配置反编译工具以及其开发环境

    0x0:前言 个人电脑重新换了下系统,Ubuntu14.04,刚好需要配置下android的反编译环境,这里简单记录一下,以供有需要的朋友参考. 其实最简单的,只需要apktool就可以了,不过有编码 ...

  2. linux boost 卸载,Ubuntu下boost库的编译安装步骤及卸载方法详解

    最近由于编译一个程序用到了C++的boost库,所以便安装了这个库.但是,其中遇到了一些小问题.所以记录下来,以供别人参考. 首先说一下我的环境:Ubuntu 12.04 32bit,  gcc 4. ...

  3. ubuntu下C编程,编译基础( 转)

    buntu下C编程,编译基础 C 编程中相关文件后缀 .a 静态库 (archive) .c C源代码(需要编译预处理) .h C源代码头文件 .i C源代码(不需编译预处理) .o 对象文件 .s ...

  4. ubuntu下vscode使用cmake编译运行c++配置文件

    在gcc/g++能编译运行c++的情况下,使用cmake编译只需要修改以下两个文件. launch.json {// 使用 IntelliSense 了解相关属性. // 悬停以查看现有属性的描述./ ...

  5. Ubuntu下通过CMake文件编译CUDA+OpenCV代码操作步骤

    在 CUDA_Test  工程中,CUDA测试代码之前仅支持在Windows10 + VS2013编译,今天在Ubuntu 14.04下写了一个CMakeLists.txt文件,支持在Linux下也可 ...

  6. ubuntu下android源码编译环境,ubuntu12.04 64位上搭建android源码编译环境

    1.首先替换源为163的源,默认源下载速度太慢 sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup (备份下当前的源列表) sudo ...

  7. ubuntu下的opencv下载编译安装

    1.下载opencv源码 在opencv官网,opencv源码下载路径如下:https://opencv.org/releases/.网页页面如下,选择需要的opencv版本下载对应的sources文 ...

  8. ubuntu下SFML小游戏编译报错

    SFML CMakeLists SFML库的安装 编译报错 SFML库的安装 sudo apt-get sudo apt-get install libsfml-dev ubuntu会将库文件安装到/ ...

  9. ubuntu下进程kidle_inject致使编译软件很慢

    一.背景 某一天编译一个程序发现半天都没编译ok,于是使用top一看发现有个别进程占用cpu奇高,遂出此文 二.怎么解决? 2.1 什么进程占据很高cpu 名为kidle_inject,同时开启了好几 ...

  10. Ubuntu下正确使用cmake编译安装glog

    1,安装gflags git clone https://github.com/gflags/gflags.git cd gflags mkdir build && cd build ...

最新文章

  1. oracle登录错误:ORA-28000: the account is locked 解决方法
  2. unity调用python脚本_Unity3d中C#脚本调用另一个C#脚本的方法
  3. jar打包 剔除第三方依赖以及它的依赖_为什么Spring Boot的 jar 可以直接运行?
  4. nginx一 之负载均衡介绍
  5. mysql + keepalived高可用
  6. 进阶移动开发,技术赋能产业
  7. Keras——用Keras搭建RNN回归循环神经网络
  8. android webview 设置cookie时间,解决Android webview设置cookie和cookie丢失的问题
  9. 桥接(Bridge)
  10. 1.2 cacti安装
  11. 数据结构 KMP 算法实现
  12. 如何更改电脑开机密码
  13. 联想服务器没有安装iis组件,win10没有iis怎么安装_手把手教你安装iis的详细步骤...
  14. Shel编程之免交互5
  15. 超级玛丽 Super Mario java基础小游戏:基于JAVA面向对象实现的超级马里奥(Super Mario)游戏(简单小游戏,仅仅使用Java面向对象基础实现(附上源码))
  16. 从零构建 React 开发环境(一) —— hello world,麻雀虽小五脏俱全~
  17. 【沧海拾昧】微机原理:8086/8088中断系统
  18. mysql5.7.19winx64安装_mysql5.7.19winx64安装配置方法图文教程(win10)
  19. Thinking in Java(Fourth Edition)2.11
  20. 1.4 计算机专业高级教程(计算机安全防护知识)

热门文章

  1. redis缓存与数据库一致性问题解决
  2. 与911S5类似的MaxProxy代理怎么样?
  3. 李佳琦、薇娅们的残酷生存物语
  4. 李开复:如何设计你的年度计划
  5. 我的原创IT著作再次被中科院图书馆、国图等国家级学术机构收藏!
  6. [转载]使用 Apache Geronimo 和 JMS 构建事件驱动的框架
  7. jetpack之workManager官方文档解析
  8. 计算机网络第七版--概述知识点总结
  9. 软件考试(一)计算机技术与软件专业技术资格(水平)考试(以下简称软件水平考试)含金量最高,与职称挂钩。
  10. SQL安全-关闭外网对1433的访问