目录(点击可跳转)
一、说明
笔者手边有一个人工智能源码,是采用Python2.7+tensorflow0.12编写的。笔者尝试运行该程序,由于tensorflow不支持Windows下的Python2.x版本,笔者决定使用Ubuntu虚拟机配置此环境。
在安装的过程中,笔者遇到了多个不兼容问题。如果你也需要安装此环境,建议严格按照下文的步骤执行。
下文将安装的各个组件版本如下:
- Python 2.7.18
- setuptools 44.1.1
- pip 20.1.1
- tensorflow 0.12.0
二、安装步骤
1. 安装python
1.1 下载源代码包
官方下载地址为:https://www.python.org/downloads/,笔者选择的版本为2.7.18。
选择源代码进行下载。
1.2 安装依赖库
apt-get install gcc g++ zlib1g-dev openssl make
1.3 修改源代码
这一步至关重要,配置不当会影响pip
的使用。
部分系统ssl库默认安装位置不在Python默认搜索位置,需要手动添加路径。
解压下载的源代码包。
tar -zxvf Python-2.7.18.tgz
查看源代码目录下的setup.py
,搜索_ssl
,可以定位到如下代码:
# Detect SSL support for the socket module (via _ssl)
search_for_ssl_incs_in = [
'/usr/local/ssl/include',
'/usr/contrib/ssl/include/'
]
ssl_incs = find_file('openssl/ssl.h', inc_dirs,
search_for_ssl_incs_in
)
if ssl_incs is not None:
krb5_h = find_file('krb5.h', inc_dirs,
['/usr/kerberos/include'])
if krb5_h:
ssl_incs += krb5_h
ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
['/usr/local/ssl/lib',
'/usr/contrib/ssl/lib/'
] )
需要手动将ssl.h
的所在路径添加到search_for_ssl_incs_in
数组中,并将ssl库文件目录添加到ssl_libs
后面的数组中。
例如,笔者的ssl.h
的路径为/usr/include/openssl/ssh.h
,ssl库文件目录为/usr/lib/ssl/
,则需要将这两处分别修改为:
# Detect SSL support for the socket module (via _ssl)
search_for_ssl_incs_in = [
'/usr/local/ssl/include',
'/usr/contrib/ssl/include/',
'/usr/include/'
]
ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs,
['/usr/local/ssl/lib',
'/usr/contrib/ssl/lib/',
'/usr/lib/ssl/'
] )
1.4 编译和安装
下面将Python安装默认位置。
请注意,下文中参数--enable-unicode=ucs4
是必须的,因为Python默认编码方式为ucs-2
,而tensorflow0.12只提供ucs-4(mu)
版。
cd Python-2.7.18
./configure --enable-unicode=ucs4
make
make install
如需将Python安装到指定位置(以
/usr/local/python27/
为例),则需要在./configure
命令后面增加参数--prefix=/usr/local/python27/
。需要注意的是,如果安装到非默认位置,需要手动配置软链接,不然控制台无法调用python
命令。
2. 安装setuptools和pip
pip
为下载和安装tensorflow
所用,setuptools
是安装pip
以及其他库的必要工具。
注意,
pip
和setuptools
不宜安装过高的版本,setuptools
最新版已经停止对Python2
的支持,而pip
也将要停止对Python2
的支持
首先安装setuptools
从国内源下载:https://pypi.tuna.tsinghua.edu.cn/simple/setuptools/
笔者选择44.1.1版。安装命令如下:
unzip setuptools-44.1.1.zip
cd setuptools-44.1.1
python setup.py install
安装pip
下载地址:https://pypi.tuna.tsinghua.edu.cn/simple/pip/
笔者选择20.1.1版。安装命令如下:
tar -zxvf pip-20.1.1.tar.gz
cd pip-20.1.1
python setup.py install
3. 安装tensorflow
建议先将pip
修改为国内源,方法详见:https://www.cnblogs.com/songzhixue/p/11296720.html
执行安装命令
pip install tensorflow==0.12.0
三、参考文章
Linux安装python2.7、pip和setuptools
如何更改python从UCS2到UCS4(How to change python from UCS2 to UCS4)