debian/ubuntu/deepin中配置TensorFlow开发环境

debian/ubuntu/deepin均为debian及其衍生发行版,其包管理基本一致,所以在此视作等同。

安装python 2.7

TensorFlow是采用Python语言的程序集,首先要确保系统上包含了合适的python环境,这里采用python 2.7,而非python 3。

由于我采用的是deepin,其自带了python 2.7环境,所以不必额外配置python 2.7.

如果系统中不含python 2.7,可以采用以下指令搜索python包:

apt search python

此时终端会显示与python相关的包的信息,从中选择python 2.7并安装即可。

sudo apt-get install -y python2.7

测试安装python是否成功,在终端里输入

python

出现以下内容:

idealisan@idealisan-PC:~/Desktop/tf$ python
Python 2.7.13 (default, Sep 26 2018, 18:42:22) 
[GCC 6.3.0 20170516] on linux2
Type "help", "copyright", "credits" or "license" for more information.

继续输入:

print "hello world"

将会显示:

>>> print "hello world"
hello world
>>> 

至此,python环境安装好了并且显示了hello world。

安装TensorFlow

TensorFlow是python程序集,借助pip安装,于是要先安装pip。在终端中输入以下命令安装pip:

sudo apt-get install python-pip python-dev

接下来使用pip安装TensorFlow,这里采用的是python 2.7版本的,终端里输入以下命令即可:

pip install tensorflow

有别于python 3版本的命令:

pip3 install tensorflow

我在安装python 2。7版本的TensorFlow的时候遇到了grpcio不达要求的情况,遇事要先用pip安装grpcio,然后在安装TensorFlow。

pip install grpcio

可能需要挂代理才能稳定地下载安装grpcio。

安装完grpcio后再使用pip安装TensorFlow。

pip install tensorflow

然后又悲剧地发现pip有问题,从stackoverflow上找到了解决办法

apt-get remove python-pip python3-pip
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
#python3 get-pip.py
这里用的是python 2.7,所以不用这个python3的pip

然后依然悲剧地失败了,提示权限不够,于是加上sudo重试。

sudo apt-get remove python-pip python3-pip \
&& wget https://bootstrap.pypa.io/get-pip.py \
&& sudo python get-pip.py

不得不说,pythonhosted.org和pypa.io的速度好慢,不知道是不是因为挂代理用的是pac模式而不是全局才这么慢。

idealisan@idealisan-PC:~/Desktop/pwd$ sudo wget https://bootstrap.pypa.io/get-pip.py && python get-pip.py
[sudo] idealisan 的密码:
--2019-08-02 17:42:29--  https://bootstrap.pypa.io/get-pip.py
正在解析主机 bootstrap.pypa.io (bootstrap.pypa.io)... 151.101.228.175, 2a04:4e42:36::175
正在连接 bootstrap.pypa.io (bootstrap.pypa.io)|151.101.228.175|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1775087 (1.7M) [text/x-python]
正在保存至: “get-pip.py.1”

get-pip.py.1              80%[===========================>       ]   1.36M  10.8KB/s    eta 40s    

后来还是出现各种错误,Google了一下,Stackoverflow上的前辈说系统自带的源的pip不好使,容易出现各种问题,要自己安装pip才行,于是我按照前辈的命令安装pip:

apt-get remove python-pip python3-pip
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
python3 get-pip.py

你别说,真还就是自己安装的好使。装好了pip,再次安装tensoflow:

sudo pip install tensorflow

不过官方的pip源总是readtimeout,即便挂代理也不行,我又去找pip源。首先尝试使用阿里云的pip源,毕竟它比较快,但是阿里云的pip源要求python3.5以上,这跟我要的不符合,我又去尝试清华大学的pip源,清华的好使!

sudo pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple

使用 -i 参数指定此次使用源为清华大学的pip源。

安装成功了!

第一份TensorFlow代码

在文本编辑器中输入以下代码并保存为.py脚本,例如叫做 tf1.py ,使用python运行它:

import tensorflow as tf
a=tf.constant([1.0,2.0])
b=tf.constant([3.0,4.0])
result=a+b
print result

运行:

idealisan@idealisan-PC:~/Desktop/tf$ python tf1.py 
Tensor("add:0", shape=(2,), dtype=float32)
idealisan@idealisan-PC:~/Desktop/tf$ 

成功显示了 result 的张量名、维度和数据类型。