Linux-Centos7 升级python2.x至python3.x以及pip安装文档
本文最后更新于 872 天前,其中的信息可能已经有所发展或是发生改变。

CentOS 7默认已安装2.7.5版本,如需安装3.x以上版本(3.11是测试版本,不稳定,且和pillow不兼容,不建议使用),不建议删除自带的2.7.5版本,建议和3.x版本共存

1:安装Python可能需要的依赖

 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ 

2:查看python 版本

[root@localhost ~]# python -V
Python 2.7.5

3:下载Python3.6.5 压缩包

https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tg
官网:Welcome to Python.org

使用wget下载:

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

使用root权限打开终端,进行解压缩操作:

tar -zxvf Python-3.6.5.tgz                                     

4:对安装包目录进行重命名:

mv Python-3.6.5 python3.6

移动python目录到opt下:

mv /python3.6 /opt/

5:修改Setup文件,启动ssl模块:

vi /opt/python3.6/Modules/Setup.dist

更改文件\删除注释:(a插入,:q!不保存退出,:wq 或 :x保存退出)

# Socket module helper for socket(2)
#_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
#SSL=/usr/local/ssl
#_ssl _ssl.c \
#-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
#-L$(SSL)/lib -lssl -lcrypto

为:

# Socket module helper for socket(2)
_socket socketmodule.c timemodule.c
# Socket module helper for SSL support; you must comment out the other
# socket line above, and possibly edit the SSL variable:
SSL=/usr/local/ssl
_ssl _ssl.c \
-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-L$(SSL)/lib -lssl -lcrypto

:x保存退出

6:编译安装包,指定安装目录,进入python3.6目录,执行

进入python3.6目录

cd /opt/python3.6

指定安装目录(prefix=/opt/python3.6为python的真正安装目录,可做修改)

./configure --with-ssl --prefix=/opt/python3.6 


在./configure过程中,如果没有加上–with-ssl参数时,默认安装的软件涉及到ssl的功能不可用,刚好pip3过程需要ssl模块

确认无误后,进入安装目录,执行编译与安装(make check 或 make test 可对软件进行测试)

[root@localhost python3.6]# make && make install

系统自带的是python2.7.5,直接执行python命令,所进入自带的环境

[root@localhost ~]# python -V
Python 2.7.5

将原来的链接备份

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

新建软连接,指向新安装的python3.6.5

ln -s /opt/python3.6/bin/python3.6 /usr/bin/python

6. 更改yum配置(yum用到python2才能执行,否则会导致命令不能正常使用)

vi /usr/bin/yum

把 #! /usr/bin/python
修改为:#! /usr/bin/python2

vi /usr/libexec/urlgrabber-ext-down

把 #! /usr/bin/python
修改为:#! /usr/bin/python2

7:验证是否可用全局可用

[root@localhost ~]# python -V
Python 3.6.5

配置pip:

1:Python3.6.5是自带了pip,我们可以进入python3.6的bin目录下进行查看你所安装的Python版本是否自带pip。

[root@localhost bin]# ls /opt/python3.6/bin/

2:创建一个软连接指向python的pip(一定要指向pip3,其他的还是会报错)

ln -s /opt/python3.6/bin/pip3 /usr/bin/pip

3:检查pip版本(注:正常情况pip版本9.0.3,此处更新过)

[root@localhost bin]# pip -V
pip 21.3.1 from /opt/python3.6/lib/python3.6/site-packages/pip (python 3.6)

4:旧版可能会提示pip版本不匹配,需要更新,执行更新命令

pip3 install --upgrade pip

5:检查更新后pip版本

[root@localhost bin]# pip -V
pip 21.3.1 from /opt/python3.6/lib/python3.6/site-packages/pip (python 3.6)

更新完成后,可正常使用pip安装模块了!

本文作者:梦仙
本网站所有资源均来自于网络,如有侵权请联系我删除!
QQ:3233353454
邮箱:3233353454@qq.com
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇