2.9 KiB
2.9 KiB
本文作者:丁辉
Centos安装Python
Python安装
前提条件:
- 升级 Openssl 版本, 至少 OpenSSL 1.1.1 OpenSSL源码编译升级
-
下载源码包
wget https://www.python.org/ftp/python/3.10.13/Python-3.10.13.tgz -
解压源码包
tar -zxvf Python-*.tgz && cd cd Python-* -
安装编译所需的依赖
# 软件包组,通常包含用于软件开发和编译的工具,如编译器、调试器、make工具等。 yum groupinstall "Development Tools" -y yum install openssl-devel bzip2-devel libffi-devel -y -
配置编译项
./configure -q --with-openssl=/usr/local/openssl --prefix=/usr/local/python3.10.13 --with-openssl-rpath=auto --enable-optimizations参数解释
参数 描述 --with-openssl=/usr/local/openssl指定OpenSSL库的安装位置。这对于编译需要OpenSSL支持的软件(如Python中的_ssl模块)非常重要。这里指的是OpenSSL安装在 /usr/local/openssl目录下。--prefix=/usr/local/python3.10.13指定安装目标目录。这意味着所有安装的文件(包括可执行文件、库文件等)将被放置在 /usr/local/python3.10.13目录下。这有助于避免与系统自带的Python版本冲突,并方便管理不同版本的Python。--with-openssl-rpath=auto设置运行时链接器搜索OpenSSL库的路径为自动。这确保了在运行时能够找到正确的OpenSSL库,即使它不在标准库路径下。这对于确保程序能够在不同环境中正确运行非常重要。 --enable-optimizations启用额外的优化,比如Profile Guided Optimization(PGO),以提高Python的性能。这会增加编译时间,但生成的Python解释器将运行得更快,特别是对于一些计算密集型的任务。 -q这个参数表示“quiet”的意思,即在执行过程中尽量减少输出信息,只有重要或必要的信息会被显示出来。 -
开始编译
make同时运行
make -j 4 -
安装
make altinstallaltinstall:避免替换默认的系统Python版本
-
创建软连接
ln -s /usr/local/python3.10.13/bin/python3.10 /usr/local/bin/ -
验证
python3.10 --version -
验证 ssl 模块
python3.10输入
import ssl ssl.OPENSSL_VERSION
问题记录
- make 遇到 Could not import runpy module 需要升级 PIP 版本即可解决