在 CentOS 7 上编译安装 Python 3.11
安装必要的依赖
首先,你需要安装一些开发工具和库,以便编译 Python 和 OpenSSL:
(图片来源网络,侵删)
yum -y groupinstall "Development tools" yum install -y wget gcc-c++ pcre pcre-devel zlib zlib-devel libffi-devel zlib1g-dev openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel bzip2-devel
安装 OpenSSL
由于 CentOS 7 自带的 OpenSSL 版本较老,不满足 Python 3.10 或更高版本的要求,需要进行升级:
-
删除原有的 OpenSSL:
yum remove openssl
-
更新信任的根证书:
yum install ca-certificates update-ca-trust force-enable update-ca-trust extract
-
下载并安装最新的 OpenSSL:
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz tar -zxf openssl-1.1.1w.tar.gz cd openssl-1.1.1w ./config --prefix=/usr/local/openssl make -j && make install
-
配置环境变量和链接:
ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl echo "/usr/local/openssl/lib" >> /etc/ld.so.conf ldconfig -v
-
验证新版本的 OpenSSL:
openssl version
安装 Python 3.11
-
下载 Python 3.11 的源码:
wget https://www.python.org/ftp/python/3.11.7/Python-3.11.7.tgz tar xvzf Python-3.11.7.tgz cd Python-3.11.7
-
如果需要,更新 gcc 版本以支持性能优化:
yum install centos-release-scl -y yum install devtoolset-10-gcc* -y source /opt/rh/devtoolset-10/enable
-
配置并编译 Python:
./configure --prefix=/usr/local/python3.11 --with-openssl=/usr/local/openssl --with-openssl-rpath=auto --enable-optimizations make -j && make altinstall
-
创建软链接以方便调用:
ln -sf /usr/local/python3.11/bin/python3.11 /usr/bin/python3.11 ln -sf /usr/local/python3.11/bin/pip3.11 /usr/bin/pip3.11
-
验证安装:
python3.11 -V pip3.11 -V
使用虚拟环境
推荐在项目中使用虚拟环境,以避免影响全局环境:
cd /www/program/some-project python3.11 -m venv venv source venv/bin/activate
这样,你的项目环境将与全局环境隔离,可以更安全地管理依赖。
这个整理版既详细又条理清晰,便于你在实际操作或分享时使用。如有其他需求或需要进一步帮助,请告诉我!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
