ONNX是facebook提出的一个 Open Neural Network Exchange协议,能够让训练好的模型在不同的框架间进行交互。

ONNX的安装相对来说不是特别麻烦,麻烦的是其依赖库的安装。ONNX依赖于pybind11。

首先依赖库的安装

sudo pip install pytest  #pytest
sudo pip install numpy #numpy
sudo pip install scipy #scipy

下载pybind11源码

git clone https://github.com/pybind/pybind11.git

如果你需要eigen库的话,还需要先安装eigen,这里我选择的是无eigen的方式

新建一个编译出来的文件夹

mkdir build
cd build
cmake ..
make -j4
sudo make install

这里有个问题,如果你同时存在python2.x和python3.x版本的话,默认选择的是python3.x版本的,但是我现在的整个环境是python2.7.12,所以就必须禁用掉Python3.x,大家都说禁用,其实就是让自动寻找方式找不到python3.x。

采用的方式是在/usr/bin中所有找到的python3.x相关的文件都移动到另一个文件夹内,然后开始编译

装好了pybind11之后(源码版本编译ONNX必须手动编译pybind11,使用pip install pybind11并不管用)

编译安装onnx

git clone https://github.com/onnx/onnx.git
cd ./onnx
python setup.py build
sudo python setup.py install

这里很有可能会出现cmake提示 Protobuf compiler not found  的问题,因此需要安装合适的protobuf编译器

sudo apt-get install  libprotobuf-dev protobuf-compiler

ONNX源码安装的更多相关文章

  1. mono-3.4.0 源码安装时出现的问题 [do-install] Error 2 [install-pcl-targets] Error 1 解决方法

    Mono 3.4修复了很多bug,继续加强稳定性和性能(其实Mono 3.2.8 已经很稳定,性能也很好了),但是从http://download.mono-project.com/sources/m ...

  2. 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展

    上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...

  3. 搭建LNAMP环境(二)- 源码安装Nginx1.10

    上一篇:搭建LNAMP环境(一)- 源码安装MySQL5.6 1.yum安装编译nginx需要的包 yum -y install pcre pcre-devel zlib zlib-devel ope ...

  4. 搭建LNAMP环境(一)- 源码安装MySQL5.6

    1.yum安装编译mysql需要的包 yum -y install gcc-c++ make cmake bison-devel ncurses-devel perl 2.为mysql创建一个新的用户 ...

  5. Greenplum 源码安装教程 —— 以 CentOS 平台为例

    Greenplum 源码安装教程 作者:Arthur_Qin 禾众 Greenplum 主体以及orca ( 新一代优化器 ) 的代码以可以从 Github 上下载.如果不打算查看代码,想下载编译好的 ...

  6. salt源码安装软件和yum安装软件

    上面简单列出了源码安装的sls文件书写思路. 涉及到一些固定的思路:如, 1,拷贝 解压安装时候需要依赖tar.gz存在 如果已安装则无需再次安装. 2,启动脚本 加入chk时候需要文件存在,如果已添 ...

  7. 搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展

    上一篇:搭建LNAMP环境(五)- PHP7源码安装Redis和Redis拓展 一.安装MongoDB 1.创建mongodb用户组和用户 groupadd mongodb useradd -r -g ...

  8. 搭建LNAMP环境(三)- 源码安装Apache2.4

    上一篇:搭建LNAMP环境(二)- 源码安装Nginx1.10 1.yum安装编译apache需要的包(如果已经安装,可跳过此步骤) yum -y install pcre pcre-devel zl ...

  9. Linux MySQL源码安装缺少ncurses-devel包

    在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...

随机推荐

  1. python matlab 带包实现全排列

    >> A=[2,5,7];perms(A) ans = 7 5 2 7 2 5 5 7 2 5 2 7 2 7 5 2 5 7 >> perms(1:4) ans = 4 3 ...

  2. leetcode 股票系列

    五道股票题总结: 121 买卖股票的最佳时机 122 买卖股票的最佳时机 124 买卖股票的最佳时机4 309  最佳股票买卖含冷冻期 714 买卖股票的最佳时机含有手续费 121 买卖股票的最佳时机 ...

  3. Java日志体系(三)commons-logging

    1.1 简介 Apache Commons Logging,又名JakartaCommons Logging (JCL),它是Apache提供的一个通用的日志接口,它的出现避免了和具体的日志方案直接耦 ...

  4. What's binary search?

    Binary Search: Search a sorted array by repeatedly  dividing the search interval in half. Begin with ...

  5. vue弹窗后如何禁止滚动条滚动?

    原文地址 常见场景 在许多填写表单的页面中,都会弹出一个选择器,让你在弹窗中选择项目.有时,弹窗本身容纳不下内容,需要让它不断滚动来展示,但因为事件是冒泡的,有时就会造成底部(body 的Z-inde ...

  6. epoll 数据库安装以及相关概念

    epoll select 只能同时处理1024个客户端, 多线程会遇到资源瓶颈,什么才是解决高并发最有效的方式呢 linux中提供了epoll 这种多路复用的IO模型,注意其他平台没有相应的实现 所以 ...

  7. DP————LIS(最长上升子序列)和LCS(最长公共子序列)问题

    LIS问题 https://www.acwing.com/problem/content/898/ 思路:首先数组a中存输入的数(原本的数),开辟一个数组f用来存结果,最终数组f的长度就是最终的答案: ...

  8. 【VS开发】CListCtrl控件使用方法总结

    CListCtrl控件使用方法总结 今天第一次用CListCtrl控件,遇到不少问题,查了许多资料,现将用到的一些东西总结如下: 以下未经说明,listctrl默认view 风格为report 相关类 ...

  9. moment的简单使用方式

    官网地址:http://momentjs.cn/ 常见示例↓ moment().format('YYYY-MM-DD HH:mm:ss'); // ’2015-11-30 23:10:10‘ mome ...

  10. 前端CSS实现图片自适应背景大小

    <body> <div> <!--背景图片--> <div id="web_bg" style="background-imag ...