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 ...
随机推荐
- Spring——概念
一.简介 Spring是一个开源的框架,Spring为简化企业级应用开发而生,使用Spring可以使简单的JavaBean实现以前只有EJB才能实现的功能.Spring是一个IOC和AOP容器框架. ...
- MyBatis-01-简介
基础知识: JDBC Mysql Java基础 Maven Junit 框架:是有配置文件的.最好的方式:看官网文档 1.简介 1.1.什么是MyBatis 简介 什么是 MyBatis? MyBat ...
- linux shell介绍
Shell定义 Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行. 实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内 ...
- windows设置自动清理log
@echo off set srcDir="D:\xx\xx\xx" set daysAgo=5 forfiles /p %srcDir% /s /m *.* /d -%daysA ...
- BZOJ5056 OI游戏[最短路树]
有生以来做过的bzoj比A+B还简单的最水的题.(确信) 不解释. UPD:据说这题正解应当是矩阵树定理?但是这个不是用来最小生成树计数的么?有生之年会补的. #include<iostream ...
- 持久化存储与HTTP缓存
本文主要学习一下一些高级的HTTP知识,例如Session LocalStorage Cache-Control Expires ETag 其实主要就是涉及到了持久化存储与缓存的技术 在此之前已经学习 ...
- docker及k8s安装consul
一.docker部署consul集群 参考文献:https://www.cnblogs.com/lonelyxmas/p/10880717.html https://blog.csdn.net/qq_ ...
- .net上传超大文件解决方案
HTML部分 <%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="index.aspx. ...
- 上传base64图片至七牛云,并返回图片link
https://developer.qiniu.com/kodo/kb/1326/how-to-upload-photos-to-seven-niuyun-base64-code
- 『ZJOI2019 D2T2』语言
~~ 话说,本题考场想出三只\(log\)的暴力做法,被卡成暴力了.~~ 题目分析 首先考虑枚举每一个点,计算这个点可以和多少点进行交易. 将所有经过该点的路径\(s,t\)拿出,那么这些极远的\(s ...