Python本地编译升级
本文以RedHat Linux平台编译Python3.9.5为例,其它平台和版本操作方式与之类似。
1 检查编译环境
首先检查编译环境,此处以Fedora为例:
Bash |
---|
| gcc --version # 检查gcc编译器
sudo yum -y install wget zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel libpcap-devel xz-devel libffi-devel libffi-dev # 检查&安装必要工具包
|
2 获取Python源码
获取python3源码,此处以python3.9.5为例:
- 官网地址:https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz
- 淘宝镜像:https://npm.taobao.org/mirrors/python/3.9.5/Python-3.9.5.tgz
Bash |
---|
| wget https://npm.taobao.org/mirrors/python/3.9.5/Python-3.9.5.tgz
|
3 解压与编译
解压编译python3:
Bash |
---|
| # 解压
tar -zxvf Python-3.9.5.tgz
# 进入解压后目录
cd Python-3.9.5
# 创建放置编译好的python的目录
sudo mkdir /opt/Python3.9.5
# 准备编译
./configure --prefix=/opt/Python3.9.5
# 编译源码
sudo make && sudo make install
|
4 检查是否编译成功
检查已编译的python环境
典型的输出如下:
Bash |
---|
| python3: /usr/bin/python3 /usr/bin/python3.9 /usr/lib/python3.9 /usr/lib64/python3.9 /usr/include/python3.9 /opt/Python3.9.5/bin/python3.9 /opt/Python3.9.5/bin/python3.9-config /opt/Python3.9.5/bin/python3 /usr/share/man/man1/python3.1.gz
|
5 创建符号链接
创建符号链接到系统可执行文件目录(可选,便于快速启用python环境):
Bash |
---|
| # python3.9.5
sudo ln -s /opt/Python3.9.5/bin/python3 /usr/bin/python395
# pip(也可以先使用whereis pip定位)
sudo ln -s /opt/Python3.9.5/bin/pip3.9 /usr/bin/pip395
|
注意:如果需要替换系统的默认python3环境,建议执行先备份再创建符号链接:
Bash |
---|
| sudo mv /usr/bin/python3 /usr/bin/python3_bak
sudo ln -s /opt/Python3.9.5/bin/python3 /usr/bin/python3
sudo mv /usr/bin/pip /usr/bin/pip_bak
sudo ln -s /opt/Python3.9.5/bin/pip3.9 /usr/bin/pip
|