Menu
翘楚小站
  • 主页
  • 小项目
  • 算法
  • 摄影
翘楚小站

Linux 安装 Python2.7 + tensorflow0.12

Posted on 2020年7月19日 by WonderBoy

目录(点击可跳转)

  • 一、说明
  • 二、安装步骤
    • 1. 安装python
      • 1.1 下载源代码包
      • 1.2 安装依赖库
      • 1.3 修改源代码
      • 1.4 编译和安装
    • 2. 安装setuptools和pip
      • 首先安装setuptools
      • 安装pip
    • 3. 安装tensorflow
  • 三、参考文章

一、说明

笔者手边有一个人工智能源码,是采用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。

python27tensorflow012_1.png

选择源代码进行下载。

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

Python3 ssl模块不可用的问题

python ucs-2与ucs-4编码方式判断

如何更改python从UCS2到UCS4(How to change python from UCS2 to UCS4)

python国内镜像源

  • python
  • tensorflow
  • 人工智能
  • 发表评论 取消回复

    您的电子邮箱地址不会被公开。 必填项已用*标注

    标签

    Arduino DIY NOIP python tensorflow 一中文创 人工智能 信息学 徐州一中 摄影 撷秀极客社区 数学 电子 短片 航拍

    分类

    归档

    近期评论

    • 王清筠发表在《【徐州一中】再一次出发》
    • 王清筠发表在《测绘伏安特性曲线(I-U图像)》
    • xzqiaochu发表在《测绘伏安特性曲线(I-U图像)》
    • 晨鹤发表在《测绘伏安特性曲线(I-U图像)》
    • 赵群发表在《测绘伏安特性曲线(I-U图像)》

    友情链接

    晨鹤小站(。・∀・)ノ゙

    清筠小站

    ©2023 翘楚小站 | Powered by WordPress & Superb Themes