Ubuntu16.04系统Tensorflow源码安装
最近学习Tensorflow,记录一下安装过程。目前安装的是CPU版的
1、下载tensorflow源码
tensorflow是个开源库,在github上有源码,直接在上面下载。下载地址:https://github.com/tensorflow/tensorflow
2、安装python的一些依赖库
tensorflow支持C、C++和Python三种语言,但是它对Python的支持是最全面的,所以我们这里使用Python。Python的安装这里就赘述了。我这里安装的是python3,就以python3为例子了
sudo apt-get install python3-numpy python3-dev python3-pip python3-wheel
3、安装bazel
Bazel是从谷歌开源的自动化构建工具,谷歌内部绝大部分的应用都是通过它来编译的。
1)安装JDK8
安装Bazel,首先要安装JDK8
2)安装相关库
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip python
注意:上面有一个是zlib1g-dev,不是zliblg-dev
3)下载bazel
下载网址为https://github.com/bazelbuild/bazel/releases,有多个版本,下载名字为bazel-<version>-installer-linux-x86_64.sh的。
4)运行安装器
第一行是为了给该安装器添加执行权限
第二行是执行该安装器,后面的--user,表示把bazel安装到了$HOME/bin目录里面。
5)设置环境变量
上面提到把bazel安装到了$HOME/bin目录,这里是把该目录添加到默认目录里面了。在调用bazel的时候系统会到该目录里查找bazel
4、配置tensorflow编译环境
进入之前下载的tensorflow源码目录内
给配置文件configure添加执行权限
执行configure文件
大部分都选的n,根据自己需要选择
5、编译pip安装包
bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package
是在tensorflow文件中有些文件没有执行权限,添加执行权限就可以了
做完这些后,重新在编译,然后编译成功。编译了好长时间啊,大概要一个半小时左右。
6、生成pip安装包.whl文件
如上图中,安装包名字为 tensorflow-1.8.0-cp35-cp35m-linux_x86_64.whl
7、用pip安装pip安装生成的安装包
8、测试是否安装成功
Tips:在测试过程中,可能会出现如下错误:
不要着急,这个一般是因为当前目录下面有一个名字为tensorflow的文件,在导入的是后python会先当前目录的。就是把那个名字问tensorflow的文件当成了tensorflow模块所以会出错。换个名字或者放到其他目录就可以了。
Ubuntu16.04系统Tensorflow源码安装的更多相关文章
- Ubuntu16.04 / OpenCV / Python 源码安装
为什么需要源码安装? 1. 对 Python 版的 OpenCV,Ubuntu 有两种安装方式: 源码安装:官网(https://opencv.org/releases.html)下载源代码,在机器上 ...
- centos 6x系统下源码安装mysql操作记录
在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...
- TensorFlow源码安装
前言 TensorFlow如果能二进制包安装,我真的不想选择自己编译,但是情况不由人,好不容易找到一台服务器,CPU不支持AVX指令集,安装的release版本运行到import tensorflow ...
- Tensorflow[源码安装时bazel行为解析]
0. 引言 通过源码方式安装,并进行一定程度的解读,有助于理解tensorflow源码,本文主要基于tensorflow v1.8源码,并借鉴于如何阅读TensorFlow源码. 首先,自然是需要去b ...
- 解决Tensorflow源码安装的之后TensorBoard 无法使用的问题
作者 cnblog 修雨轩陈 我是按照 Tensorflow 下 https://github.com/tensorflow/tensorflow/blob/master/tensorflow/g3 ...
- Ubuntu 14.04下从源码安装qt4.x
转自:http://www.cnblogs.com/crazywangzx/p/3505293.html 1.到官网http://qt-project.org/downloads或者ftp://ftp ...
- Linux系统下源码安装rz/sz命令
背景:在windows环境下,使用xshell远程连接公司内部做的一个类似centos的系统,但该linux系统yum install有问题,只能源码安装. root 账号登陆后,依次执行以下命令: ...
- Ubuntu16.04系统中Nmon的安装
Nmon的安装,亲民的安装方法: apt install nmon 不再需要源码编译安装和下载文件到指定目录,解压再运行了.
- 解决 Ubuntu16.04 + opencv4.1 源码编译错误 Makefile:160: recipe for target 'all' failed
最近源码编译 opencv,出现下面的错误 [ %] Built target opencv_dnn Makefile:: recipe for target 'all' failed google ...
随机推荐
- asp.net操纵Oracle存储过程
在bloginfo数据库中,利用用户名 system 密码 scy251147 选择超级管理员登陆 创建如下存储过程: 1 /*存储过程*/ 2 create or replace procedu ...
- MySQL 关于自定义函数的操作
-- 函数 --> 模块化,封装,代码复用 create function 函数名([参数列表]) returns 数据类型 begin SQL语句: return 值: end; 示例: -- ...
- SpringBoot AOP介绍
说起spring,我们知道其最核心的两个功能就是AOP(面向切面)和IOC(控制反转),这边文章来总结一下SpringBoot如何整合使用AOP. 一.示例应用场景:对所有的web请求做切面来记录日志 ...
- 【Winform-自定义控件】DataGridView 单元格合并和二维表头
DataGridView单元格合并和二维表头应用: //DataGridView绑定数据 DataTable dt = new DataTable(); dt.Columns.Add("); ...
- mysql中in查询中排序
mysql中in查询条件的时候,很多时候排序是不规则的,如何按照in里面的条件进行排序呢? mysql中给出了办法,在in后面加order by field,order by field的首个条件是按 ...
- 域内信息收集 powershell收集域内信息
POwershell收集域内信息 Powershell(你可以看做CMD的升级版 但是和cmd完全不一样) 原来的powershe是不能执行任何脚本的 更改执行策略 这个是一个绕过的脚本 接下来我们了 ...
- [BZOJ1123]:[POI2008]BLO(塔尖)
题目传送门 题目描述 Byteotia城市有n个towns.m条双向roads.每条road连接两个不同的towns,没有重复的road.所有towns连通. 输入格式 输入n,m及m条边. 输出格式 ...
- Java项目框架搭建系列(Java学习路线)
前言: 已经工作4年,真是时间飞逝. 其实当你在一间公司工作一两年之后,公司用到的开发框架的基本使用你应该都会了. 你会根据一个现有项目A复制一下搭建出另外一个类似框架的项目B,然后在项目B上进行业务 ...
- SRS之HLS部署实例源码分析
1. 综述 SRS 关于 HLS 的具体配置可见: HLS部署实例 SRS 关于 hls 的配置文件内容如下: listen 1935; max_connections 1000; daemon of ...
- LeetCode 6. Z字形变换(ZigZag Conversion)
题目描述 将字符串 "PAYPALISHIRING" 以Z字形排列成给定的行数: P A H N A P L S I I G Y I R 之后从左往右,逐行读取字符:"P ...