因为用pip命令直接下载安装会链接到google,导致打不开,比如使用pip install tensorflow碰到如下的问题。因此在本文中,主要介绍了如何通过源码进行TensorFlow的安装

$ pip install tensorflow
Collecting tensorflow
Could not find a version that satisfies the requirement tensorflow (from versions: )
No matching distribution found for tensorflow

1、下载TensorFlow

可以将TensorFlow安装包下载到本地,可以根据自己的需求点击TensorFlow下载地址下载最新版本。例如下载最新版本的TensorFlow1.4.1.tar.gz,然后解压。

或者直接使用如下命令获取:

git clone --recurse-submodules https://github.com/tensorflow/tensorflow

使用 --recurse-submodules 选项来获取 TensorFlow 需要依赖的 protobuf 库文件。

2、安装Bazel

Bazel是Google开源构建工具,类似于Make的工具,用来编译构建tensorflow,mac的bazel安装指导

Bazel下载地址:
https://github.com/bazelbuild/bazel/releases(bazel-0.2.2b-installer-linux-x86_64.sh)

brew install bazel

如果安装成功,请用下面的命令查看:

bazel version

 3、安装TensorFlow

进入TensorFlow的文件夹下面进行相关的配置:

./configure

进行配置,在配置过程中会出现一系列的问题,通常情况下没有特殊的要求,一般全部都选择n:

配置完成后就是编译过程了,输入终端命令,这个过程会花一段时间来编译,大概需要1个小时

$ bazel build --config=opt //tensorflow/tools/pip_package:build_pip_package

经过漫长的编译后,任务就基本上完成了,接下来就是输入下面的命令来生成pip安装包了:

$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

最后就是用pip命令来安装TensorFlow了,注意/tmp/tensorflow_pkg/文件夹下的文件tensorflow-1.4.0-cp36-cp36m-macosx_10_7_x86_64.whl是自动生成的,跟安装的版本有关。

$ sudo pip install /tmp/tensorflow_pkg/tensorflow-1.4.-cp36-cp36m-macosx_10_7_x86_64.whl 

至此全部完成

4、测试

通过在python中加载TensorFlow模型进行测试是否安装完成。

>>> import tensorflow as tf
>>>

也可以到tensorflow的sample里面跑教程

$ cd tensorflow/models/image/mnist
$ python convolutional.py

参考文档:

1、tensorflow源代码方式安装

2、Installing Bazel on macOS

3、TensorFlow的github上的源代码下载

4、TensorFlow源码安装

5、Mac下使用源码编译TensorFlow

6、如何在Mac电脑上面编译GPU版本TensorFlow

mac/Linux源码安装TensorFlow的更多相关文章

  1. Linux源码安装JDK1.8

    Linux源码安装Java 1.到官网下载 jdk-8u131-linux-x64.tar.gz 官网地址:http://www.oracle.com/technetwork/java/javase/ ...

  2. mysql-5.5 for linux源码安装

    mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison  ...

  3. linux源码安装mysql,shell编程学习,ubuntu

    一.mysql安装 以源码安装的方式编译和安装Mysql 5.6. 1.卸载旧版本 rpm -qa | grep mysql 检查是否有旧版本 查询结果:mysql-libs-5.1.73-7.el6 ...

  4. Linux源码安装软件

    Linux环境下 源码编译安装软件 ==== 1. 下载,步骤略 ==== 2. 验证,部分官方下载同时提供签名,MD5,sha1,sha256等校验信息. $ gpg --verify gnupg- ...

  5. Linux 源码安装 FFmpeg

    加班次数频繁,已经快一年没有写博了.由于此次在项目中使用到了 FFmpeg 来处理音视频,顾记录下在 Linux 系统中源码安装 FFmpeg 以便不时之需. 1. 安装 yasm yasm 是一个汇 ...

  6. linux源码安装软件的一般方法

    rhel系统貌似安装不了xmgrace,配置的时候居然说要那个M*tif库.百度了一下,需要openmotif库,然后用root账户想要用yum安装一下这个库,搞了好久没搞懂.后面搞明白了,原因竟是因 ...

  7. Linux 源码安装Ansible 参考篇

    Ansible 源码搭建配置 近期在学习自动化运维相关技术,文章主要模拟内网情况下对Ansible的安装演示,源码安装较为繁琐.枯燥,尤其是在实际安装过程中可能出现各式各样的问题,所有在安装过程中尽量 ...

  8. Linux源码安装RabbitMQ高可用集群

    1.环境说明 linux版本:CentOS Linux release 7.9.2009 erlang版本:erlang-24.0 rabbitmq版本:rabbitmq_server-3.9.13 ...

  9. Linux源码安装mysql步骤

    创建文件夹: mkdir  /usr/local/webserver 安装必要依赖包      yum -y install gcc gcc-c++ make ncurses-devel安装cmake ...

随机推荐

  1. Installing Office Online Server for SharePoint 2016

    Office Online Server is the next version of the Office Web Apps, which allows your users to view and ...

  2. c++中结构体sort()排序

    //添加函数头 #include <algorithm> //定义结构体Yoy typedef struct { double totalprice;         //总价 doubl ...

  3. 【NLP】How to Generate Embeddings?

    How to represent words. 0 . Native represtation: one-hot vectors Demision: |all words| (too large an ...

  4. 最简单的socket服务器与客户端

    服务器: //服务器 #include <stdio.h> #include <netinet/in.h> #include <unistd.h> #include ...

  5. Civil 3D 二次开发 创建Civil 3D 对象—— 00 ——

    本节中我们通过创建几何空间点.曲面和采样线了解Civil 3D对象的创建方法.因Civil 3D对象的创建方法相比AutoCAD对象创建要简单的多,比如创建一个几何空间点,最简单的情况采用一行代码(没 ...

  6. 进入jsp页面的6种方法

    1.sendRedirect重定向,效率低,发送一个状态码,然后让浏览器去请求这个地址,显示最新的url值 2.forword转发,效率高,服务器访问目标url,然后把url的响应内容读取过来,在发送 ...

  7. 轮询、长轮询、websock

    引入 Web端即时通讯技术:即时通讯技术简单的说就是实现这样一种功能:服务器端可以即时地将数据的更新或变化反应到客户端,例如消息即时推送等功能都是通过这种技术实现的.但是在Web中,由于浏览器的限制, ...

  8. K - Transformation HDU - 4578 线段树经典题(好题)

    题意:区间  加   变成定值 乘  区间查询:和 平方和 立方和 思路:超级超级超级麻烦的一道题  设3个Lazy 标记分别为  change 改变mul乘 add加  优先度change>m ...

  9. BZOJ4671 异或图(容斥+线性基)

    题意 定义两个结点数相同的图 \(G_1\) 与图 \(G_2\) 的异或为一个新的图 \(G\) ,其中如果 \((u, v)\) 在 \(G_1\) 与 \(G_2\) 中的出现次数之和为 \(1 ...

  10. Android 性能优化提示

    原文 http://developer.android.com/guide/practices/design/performance.html 性能优化 Android应用程序运行的移动设备受限于其运 ...