因为好久以前启用的是CentOS 6,默认的是Python2.6.6版本,现在不少的软件需要2.7以上的,特此记录一下Python2.6.6升级到Python 2.7.12的全过程:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #下载源码 #在下载目录解压源码 tar -zxvf Python-2.7.12.tgz #进入解压后的文件夹 cd Python-2.7.12 #在编译前先在/usr/local建一个文件夹python2.7.12(作为python的安装路径,以免覆盖老的版本,新旧版本可以共存的) mkdir /usr/ local /python2.7.12 #编译前需要安装下面依赖,否则下面安装pip就会出错 yum install openssl openssl-devel zlib-devel gcc -y #安装完依赖后执行下面命令 vim ./Modules/Setup.dist #找到#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz去掉注释并保存(即去掉井号),vim的搜索命令是输入/,再输入关键字回车 #在解压缩后的目录下编译安装 ./configure --prefix=/usr/ local /python2.7.12 -- with -zlib make make install #此时没有覆盖老版本,再将原来/usr/bin/python链接改为别的名字 mv /usr/bin/python /usr/bin/python2.6.6 #建立新版本python的软链接 ln -s /usr/ local /python2.7.12/bin/python2.7 /usr/bin/python #输入 python #显示出python的新版本信息 [root @ping Python-2.7.12] # python Python 2.7.12 ( default , Sep 22 2019, 08:15:45) [GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2 Type "help" , "copyright" , "credits" or "license" for more information. >>> #修改yum配置文件 #之所以要保留旧版本,因为yum依赖Python2.6,改下yum的配置文件,指定旧的Python版本就可以了。 vim /usr/bin/yum #将第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6.6 #安装最新版本的pip python get-pip.py #此步如果出现以下错误: Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host= 'pypi.org' , port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError( "Can't connect to HTTPS URL because the SSL module is not available." ,)) - skipping ERROR: Could not find a version that satisfies the requirement pip (from versions: none) ERROR: No matching distribution found for pip #尝试用以下方法 #yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel #yum install readline-devel sqlite-devel bzip2-devel.i686 openssl-devel.i686 gdbm-devel.i686 libdbi-devel.i686 ncurses-libs,zlib-devel.i686 #curl https://bootstrap.pypa.io/get-pip.py | python #找到pip2.7的路径,此步可以省略,一般来是在/usr/local/python2.7.12/bin/pip2.7 find / -name "pip*" #为其创建软链作为系统默认的启动版本(之前有旧版本的话就先删掉rm -rf /usr/bin/pip) ln -s /usr/ local /python2.7.12/bin/pip2.7 /usr/bin/pip #看一下pip的版本 pip -V |
Qi 问的问题 2019年9月22日