1. 下载安装包并上传到服务器
https://www.python.org/ftp/python/3.11.4/Python-3.11.4.tgz
2. 解压
tar -zxf Python-3.11.4.tgz
3. 升级
升级依赖 进入源码目录 并编译安装
3.1 安装依赖
yum groupinstall "Development tools" -y
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel libffi-devel -y
因为需要安装openssl11 openssl11-devel(python3.11 需要这个openssl软件十一版本),否则会报错
治标:pip3 install virtualenv -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
如果使用pip3 install virtualenv 会报错,解决方法就是加上-i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
治本:解决依赖兼容问题:安装匹配版本python3.11 匹配的版本openssl11 openssl11-devel
//1. 可能需要先执行
yum update -y
//2. 然后
yum install -y epel-release
//3. 安装
yum install -y openssl-devel openssl11 openssl11-devel
#解压缩安装包
yum -y install gcc zlib zlib-devel libffi libffi-devel
#安装源码编译需要的编译环境
yum install readline-devel
#可以解决后期出现的方向键、删除键乱码问题,这里提前避免。
yum install openssl-devel openssl11 openssl11-devel
#安装openssl11,后期的pip3安装网络相关模块需要用到ssl模块。
export CFLAGS=$(pkg-config --cflags openssl11)
export LDFLAGS=$(pkg-config --libs openssl11)
#设置编译FLAG,以便使用最新的openssl库
#这个最新版python3了
3.2 进入源码目录
cd /opt/python/Python-3.11.4
3.3 配置和安装
./configure --enable-optimizations
make altinstall
3.4 将python3 和pip3链接到python3.11 和 匹配3.11
#进入刚解压缩的目录 ./configure --prefix=/usr/python --with-ssl #指定python3的安装目录为 /usr/python 并使用ssl模块,指定目录好处是 #后期删除此文件夹就可以完全删除软件了。 make && make install #就是源码编译并安装了,时间会持续一段时间。
rm -rf /usr/bin/python3 (旧版本的链接)
rm -rf /usr/bin/pip3(旧版本的链接)
ln -s /usr/python/bin/python3 /usr/bin/python3 (替换新版本) ln -s /usr/python/bin/pip3 /usr/bin/pip3
(替换新版本)
#指定链接,此后我们系统的任何地方输入python3就是我们安装的
3.5 验证 pip3 -V
4. 安装虚拟机工具
pip3 install virtualenv
创建一个虚拟环境my_env: 执行命令virtualenv my_env
进入my_env:
通过source bin/activate命令进入my_env虚拟环境。并安装requests模块,对比一下,就是说明不同环境,相互不会有影响。
退出my_env虚拟环境:deactivate
pip3 freeze 发现没有requests模块
标签:Centos7python,3.6,pip3,devel,升级,openssl11,install,安装,usr From: https://www.cnblogs.com/allenxx/p/17473537.html