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 ...
随机推荐
- java合并数组的几种方法,stream流合并数组
一.实例代码 package cc.ash; import org.apache.commons.lang3.ArrayUtils; import java.lang.reflect.Array; i ...
- SqlServer获取当前日期
1. 获取当前日期 select GETDATE() 格式化: ) ---- :: 2. 获取当前年 --2017 3.获取当前月 --05或5 4.获取当前日期 --07或7 select DAY ...
- 数据管理必看!Kendo UI for jQuery过滤器的全球化
Kendo UI for jQuery最新试用版下载 Kendo UI目前最新提供Kendo UI for jQuery.Kendo UI for Angular.Kendo UI Support f ...
- ARDUINO UNO烧录BOOTLOADER
批量烧录为了速度加快,使用USBASP工具,配合PROGISP软件进行烧录. 因为脱离了ARDUINO IDE,所以需要研究AVR单片机的熔丝位设置问题. 刷ATMEGA32U4芯片,需要这样设置: ...
- hive常用日期函数-模板
已知日期 要求日期 语句 结果 本周任意一天 本周一 select date_sub(next_day('2016-11-29','MO'),7) ; 2016-11-28 本周任意一天 上周一 se ...
- mysql修改数据存储路径报错处理
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'解决?: >>> vim ...
- nginx信号
ps aux | grep nginx #查看nginx进程,要查看nginx的pid,就得使用这个命令查看*********************nginx信号****************** ...
- CDOJ 1264 人民币的构造 区间问题+数论
人民币的构造 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Status ...
- 家庭问题x
[问题描述] 有n个人,编号为1,2,……n,另外还知道存在K个关系.一个关系的表达为二元组(α,β)形式,表示α,β为同一家庭的成员. 当n,k和k个关系给出之后,求出其中共有多少个家庭.最大的家庭 ...
- 动态DP教程
目录 前言 开始 更进一步 前言 最后一届NOIPTG的day2T3对于动态DP的普及起到了巨大的作用.然而我到现在还不会 开始 SP1716 GSS3 - Can you answer these ...