热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

centos7.3配置python2、3环境与配置各自pip

环境:CentOS-7-x86_64-Everything-1611No.1查看CentOS对Python的默认依赖[root@cs~]#lsusrbinpython*

环境:CentOS-7-x86_64-Everything-1611

No.1 查看CentOS对Python的默认依赖

[root@cs ~]# ls /usr/bin/python*
/usr/bin/python  /usr/bin/python2  /usr/bin/python2.7

因为CentOS的yum对Python的依赖,我们在安装Python的时候,要小心避开,以免影响yum的使用。

No.2 准备编译环境以及配置相关依赖

[root@bogon nee]# yum groupinstall 'Development Tools' && yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel && yum -y epel-release

需要注意的是,这一步必须要做,为了避免后面安装解释器时遇见错误。

No.3 下载Python解释器及各自的pip包,并解压

3.1 下载tar包

[root@bogon nee]# cd /usr/local/src/
[root@bogon src]# wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tar.xz && wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tar.xz && wget --no-check-certificate https://github.com/pypa/pip/archive/9.0.3.tar.gz && wget https://bootstrap.pypa.io/get-pip.py

3.2 解压tar包

[root@bogon src]# tar -xvf Python-3.5.4.tar.xz && tar -xvf Python-2.7.14.tar.xz && tar -zxvf 9.0.3.tar.gz

No.4 Python2的安装并建立软连

4.1 安装

[root@bogon src]# cd Python-2.7.14/
[root@bogon Python-2.7.14]# ./configure --prefix=/usr/local/python/python27 --enable-optimizations
[root@bogon Python-2.7.14]# make && make install

我们在 ./configure 这一步,将Python2安装在/usr/local/python/python27这个目录下,下面Python3也在/usr/local/python目录下,这样便于管理,和安装其他版本的解释器。

4.2 建立软连

我们可以看到bin下有python和python2和python2.7这三个可以用的解释器

[root@bogon Python-2.7.14]# ls /usr/local/python/python27/bin/ 
2to3 idle pydoc python python2 python2.7 python2.7-config python2-config python-config smtpd.py

任选一个解释器建软连都行  

[root@bogon Python-2.7.14]# ln -s /usr/local/python/python27/bin/python2 /usr/bin/python27

注意,软连到/usr/bin的是python27,因为系统默认有python2,所以,我们不能跟人家一样...下面其他的软连同理,避开系统默认的

No.5 Python3的安装并建立软连

这里建立软连和添加PATH一样,用哪种方法都行, 软连的意思是将python的解释器添加到 /usr/bin 下,而 /usr/bin 这个路径在PATH中已经存在的

5.1 安装

[root@bogon Python-2.7.14]# cd ../Python-3.5.4/
[root@bogon Python-3.5.4]# ./configure  --prefix=/usr/local/python/python35 --enable-optimizations
[root@bogon Python-3.5.4]# make && make install

5.2 建软连

注意:/usr/local/python/python35/bin/ 下的解释器叫什么,最好ls一下看看。

[root@bogon Python-3.5.4]# ln -s /usr/local/python/python35/bin/python3 /usr/bin/python35

No.6 配置Python3的pip并建立软连

6.1 安装Python3的pip包

[root@bogon Python-3.5.4]# ls /usr/local/src/ && cd ../pip-9.0.3/
9.0.3.tar.gz  pip-9.0.3      Python-2.7.14.tar.xz  Python-3.5.4.tar.xz
get-pip.py    Python-2.7.14  Python-3.5.4
[root@bogon pip-9.0.3]# python35 setup.py install

可以看到Python3的pip包是pip-9.0.3,所以我们要切换到此目录内,执行安装,这一步是基于前面步骤没有问题的基础上执行的。比如你python35的解释器没有配好,那么根本无法执行pip的安装。

6.2 建立pip3的软连

# [root@bogon pip-9.0.3]# ln -s /usr/local/python/python35/bin/pip /usr/bin/pip  # 这个软连可不建立,这样只是没有默认的pip
[root@bogon pip-9.0.3]# ln -s /usr/local/python/python35/bin/pip /usr/bin/pip35

我们在用pip的时候,直接pip35就行,下面的Python2的pip同理。

No.7 配置Python2的pip并建立软连

7.1 安装Python2的pip包

[root@bogon pip-9.0.3]# cd .. && ls
9.0.3.tar.gz  pip-9.0.3      Python-2.7.14.tar.xz  Python-3.5.4.tar.xz
get-pip.py    Python-2.7.14  Python-3.5.4
[root@bogon src]# python27 get-pip.py

7.2 建立Python2的软连

[root@bogon src]# ln -s /usr/local/python/python27/bin/pip2 /usr/bin/pip27

No.8 执行测试

[root@cs src]# python35 -V
Python 3.5.4
[root@cs src]# pip35 -V
pip 9.0.3 from /usr/local/python/python35/lib/python3.5/site-packages/pip-9.0.3-py3.5.egg (python 3.5)
[root@cs src]# python27 -V
Python 2.7.14
[root@cs src]# pip27 -V
pip 10.0.1 from /usr/local/python/python27/lib/python2.7/site-packages/pip (python 2.7)

No.9 选择升级(此步骤可略过)

目前最新的pip包为10.0.1,如果不升级,在每次使用pip的时候,会提示你升级,当然我们可以忽略,如果要升级的话:

pip35 install --upgrade pip    # Python3的pip升级方式
pip27 install --upgrade pip    # Python2的pip升级方式

至此,我们在centos下成功安装双版本的python解释器并设置各自的pip。只是没有默认的解释器和pip,但我们为了省事没有修改系统依赖的yum头,而且,修改yum头的话,新手容易失手。

1.  保存默认版本,并建立yum依赖的软连
    mv /usr/bin/python2.7 /usr/bin/python2.7.5
    ln -s /usr/bin/python2.7.5 /usr/local/bin/python2.7.5
    ll /usr/bin/yum*
    vi /usr/bin/yum*
    vi /usr/libexec/urlgrabber-ext-down
        #!/usr/bin/python —> #!/usr/bin/python2.7.5

3. 准备编译环境与相关依赖
    yum groupinstall 'Development Tools' && yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel && yum -y epel-release
4. 下载解释器与pip的tar包,执行解压
    cd /usr/local/src

    wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tar.xz && wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tar.xz && wget --no-check-certificate https://github.com/pypa/pip/archive/9.0.3.tar.gz && wget https://bootstrap.pypa.io/get-pip.py

    tar -xvJf Python-3.5.4.tar.xz && tar -xvJf Python-2.7.14.tar.xz && tar -zxvf 9.0.3.tar.gz

# xz压缩方式,tar打包方式

5. 执行安装,并建立各自的软连
    cd Python-3.5.4
    ./configure  --prefix=/usr/local/python/python35 --enable-optimizations

    make && make install
    mkae clean && make distcleancd 

    ln -s /usr/local/python/python35/bin/python3 /usr/bin/python3
    ln -s /usr/local/python/python35/bin/python3 /usr/bin/python
    
    cd /usr/local/src/Python-2.7.14
    ./configure  --prefix=/usr/local/python/python27 --enable-optimizations

    make && make install
    mkae clean && make distcleancd
    ln -s /usr/local/python/python27/bin/python2 /usr/bin/python2

7. 配置python3 的pip

    wget --no-check-certificate https://github.com/pypa/pip/archive/9.0.3.tar.gz


    tar -zxvf 9.0.3.tar.gz
    cd pip-9.0.3
    python3 setup.py install
    ln -s /usr/local/python/python35/bin/pip3 /usr/bin/pip3
    ln -s /usr/local/python/python35/bin/pip /usr/bin/pip
    pip3 install --upgrade pip


python2 配置pip
wget https://bootstrap.pypa.io/get-pip.py
python2 get-pip.py
ln -s /usr/local/python/python27/bin/pip2 /usr/bin/pip2

pip2 install --upgrade pip
测试笔记

参考:

  https://www.linuxidc.com/Linux/2017-12/149807.htm

  解决yum头部对Python依赖的问题,强迫症可以看看


that's all


推荐阅读
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了如何在Python3环境中配置Appium1.4.6,并指导如何连接模拟器进行自动化测试。通过本文,您将了解从环境搭建到模拟器连接的完整流程。 ... [详细]
  • 在DELL Inspiron 14R上部署CentOS X64 6.4的详细步骤
    本文详细记录了在DELL Inspiron 14R笔记本电脑上安装CentOS X64 6.4操作系统的过程,包括遇到的问题及解决方法。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细记录了在银河麒麟操作系统和龙芯架构上使用 Qt 5.15.2 进行项目打包时遇到的问题及解决方案,特别关注于 linuxdeployqt 工具的应用。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 在Fedora 31上部署PostgreSQL 12
    本文详细介绍如何在Fedora 31操作系统上安装和配置PostgreSQL 12数据库。包括环境准备、安装步骤、配置优化以及安全设置,确保数据库能够稳定运行并提供高效的性能。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • Python基础教程:struct模块与格式化字符详解
    本文详细介绍了Python中struct模块的功能,以及如何利用格式化字符实现Python与C语言结构体之间的数据转换。文章通过具体实例讲解了struct模块的主要方法及其应用场景。 ... [详细]
  • Linux静默安装Oracle 11g教程
    准备工作在电脑中下载linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.ziphttp:download.oracle.comotnlinuxoracle11gR2l ... [详细]
  • centos7如何利用yum安装mysql 8.0.12
    这篇文章将为大家详细讲解有关centos7如何利用yum安装mysql8.0.12,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有 ... [详细]
author-avatar
kanney姜_958
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有