python: python 3.12在生产环境安装时,常用的configure参数
一,命令:
./configure --prefix=/usr/local/python312 \
--enable-optimizations \
--with-lto \
--with-ensurepip=install
二,各个参数的说明:
1.
--prefix=/usr/local/python312 (强烈推荐)- 作用:指定 Python 的安装路径。
- 生产为什么重要:绝对不要让源码编译的 Python 直接覆盖系统自带的
/usr/bin/python(Linux 系统的包管理器如yum/apt或系统组件高度依赖自带的 Python 版本,覆盖会导致系统崩溃)。
将其隔离在独立目录,后续通过软链接或虚拟环境调用。
2.
--enable-optimizations (生产必选)- 作用:开启 PGO (Profile Guided Optimization,配置文件引导优化)。
- 生产为什么重要:它会在编译过程中让 Python 跑一遍自带的测试集,收集运行数据,然后针对性地对编译器进行二次优化。开启后,Python 的性能通常能提升 10% 到 20%。
- 注意:这会导致编译时间大幅增加(可能需要 15-30 分钟),在生产环境构建镜像或部署时需耐心等待。
3.
--with-lto (生产必选)- 作用:开启 LTO (Link Time Optimization,链接时优化)。
- 生产为什么重要:它允许编译器在链接阶段跨越不同的二进制源文件进行全局优化。这可以进一步缩小生成的二进制文件体积,并带来额外的性能提升,与 PGO 结合是生产环境的标配。
4.
--with-ensurepip=install- 作用:在安装 Python 的同时,自动下载并安装配套的
pip和setuptools。 - 生产为什么重要:确保环境部署完毕后直接具备线上依赖包的安装能力,无需手动再去下载
get-pip.py。
浙公网安备 33010602011771号