zoukankan      html  css  js  c++  java
  • CentOS 6.X Python 2.6升级到Python 2.7 【转】

    前言:一些第三方框架为了降低复杂性,新的版本已经开始不支持旧版本的python,比如Django这个web框架1.8版本及以上仅仅只支持python2.7及以上版本(记忆中是这个1.8版本),pip安装也会弹出响应警告。安装过程中遇到各种各样的问题,在众里寻他千百度情况下,通过一大堆错误的搜索,终于把python版本给升级了。但这个版本升级不是完全的替换,只是让我们新版本的python可以用pip正常安装我们需要的第三方模块。CentOS7默认的python版本是2.7.5所以,就以这个版本为例,如果想要将python升级到python3.x应该也是相同原理。

    一、使用yum安装wget工具(存在则跳过)

    yum install wget

     

    二、下载时候可以自己到官网找自己想要的2.7以上版本官网地址:www.python.org/ftp/python

    将下载文件统一下载到home目录下

    cd /home

     

    wget https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz

    tar -zxvf Python-2.7.5.tgz     (z是压缩格式,x为解压,v为显示过程,f指定备份文件)

    cd Python-2.7.5

     

    【检测是否有编译环境如gcc,配置安装路径,装在Python27目录下】

    ./configure --prefix=/usr/local/Python27

     

    若报错没有编译环境,则安装编译集成包:

    yum groupinstall "Development tools"

     

    【重新检查,和设置安装路径】

    ./configure --prefix=/usr/local/Python27

     

    【编译源文件】

    make

     

    【安装编译后的文件】

     make install

     

    【安装完成,python就会被安装到/usr/local/Python27目录下面的,然后我们替换系统自带的python2.6】

    先备份原版python

    mv /usr/bin/python /usr/bin/python.bak

     

    建立python2.7.5指向系统/usr/bin/的软连接(相当于windows的快捷方式)让系统使用新版的Python

    ln -s /usr/local/Python27/bin/python2.7 /usr/bin/python

    输入python就会在命令行显示我们新版的python2.7.5

     

    【但安装完后我们python2.7.5的模块还是空的,连setuptools工具都没有,pip也没有,我们yum安装功能也用不了】

    1、先解决yum问题,输入下面命令查看旧版python的全名应该会有一个python2.6

    ls /usr/bin |grep python

     

    编辑yum的脚本文件

    vi /usr/bin/yum

    把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.6

    (就是把旧版本python作为yum的执行环境,保存退出后yum安装即可正常运行)

            

    2、setuptools模块安装到新版python2.7目录lib/site-packages/下

    下载setuptools官网地址:https://pypi.python.org/pypi/setuptools

    好像只有setuptools-38.6.0-py2.py3-none-any.whl (md5)和setuptools-38.6.0.zip (md5)两种包,官方推荐使用.whl包,但还不知道怎么安装,直接下载zip包(2018年3月16号下载)

    cd /home

    wget https://pypi.python.org/packages/95/b9/7c61dcfa6953271f567a8db96f110cd8cf75e13a84c1d293649d584d2d39/setuptools-38.6.0.zip

    解压zip包

    unzip setuptools-38.6.0.zip

    进入解压目录

    cd setuptools-38.6.0

     

    使用新版本的python安装

    python setup.py install

    【在这里会报错,Compression requires the (missing) zlib module,缺少zlib模块】

     先安装缺少的模块

     yum install zlib

     yum install zlib-devel

     

    【将python2.7.5重新进行编译安装】

     cd /home/Python-2.7.5

     编译。如果有报错,先跳过,直接下一步

     make

     安装

     make install

     进入setuptools-38.6.0目录

     cd /home/setuptools-38.6.0

    再次安装,应该不会再报错了

     python setup.py install

    【pip模块的安装】

    同上,官网地址https://pypi.python.org/pypi/pip   下载压缩包

    wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz

    tar -zxvf pip-9.0.1.tar.gz

    cd pip-9.0.1

    由于pip安装包依赖于setuptools模块,所以可以直接安装

    python setup.py install

            

    到这里,就完成的版本的基本升级,后面就可以通过pip进行软件安装。

    查看pip版本

    pip --version

    转:https://www.cnblogs.com/gne-hwz/p/8586430.html

    -----------------------------------------------------------

    pip版本的升级,由于替换的新版本python,安装pip可能不是最新版,先进行pip的升级。此命令慎用!升级后经常会导致pip不可用,又得卸载重装。

    pip install --upgrade pip

    -----------------------------------------------------------

    卸载pip

    python -m pip uninstall pip

    sudo apt-get remove python-pip python-pip 【非必要】

  • 相关阅读:
    firewalld添加/删除服务service,端口port
    centos7下配置ftp服务器
    CentOS安装vsftpd FTP后修改默认21端口方法
    虚拟机,安装tools时出现“安装程序无法继续解决
    Linux下mysql数据库备份
    测试linux下磁盘的读写速率
    redis状态详解
    office2010安装不了提示已经安装32位的了怎么办
    nginx安装部署
    结构体赋值
  • 原文地址:https://www.cnblogs.com/paul011/p/11236983.html
Copyright © 2011-2022 走看看