rpm系linux手动编译升级python2至python3

        先声明笔者实际操作环境为centos7.x86-64,由于很多Linux系统默认的Python为python2,但是出于各种原因,我们需要在linux系统上升级python至python3,由于很多情况下受限于系统版本,包管理器yum或apt会将python2的某一版本作为最新稳定版,我们无法直观通过包管理器来进行安装,因此就需要手动编译安装,在这个过程中,笔者总结了一下自己踩过的坑

首先我们下载官网的压缩包,根据系统和架构选择适合自己的,这里我选的是linux.x86_64的:

wget https://www.python.org/ftp/python/3.11.6/Python-3.11.6.tgz

接着解压源码包并进入源码目录:

tar xf Python-3.11.6.tgz 
cd Python-3.11.6/

接着进行编译安装,编译这里,注意编译选项:

mkdir -p python-3.11
./configure --prefix=/usr/local/python-3.11 --enable-shared --enable-optimizations

--prefix指定安装路径,--enable-shared则是启用共享库,更多的编译选项请参考所安装python版本的官方手册,接着是make两连击:

make -j`nproc` && make install

这一步做完python就已经被正确安装了,但是输入python --version依旧是旧版本的python,这里需要注意的点在于妥善处理新旧版本的python,因为许多linux包管理器等使用的是python2,如若不妥善处理会造成基础功能受损,提供两种思路(笔者推荐第二种):

一种是对yum包管理器文件直接进行修改:

备份原本的python可执行文件:

mv /usr/bin/python /usr/bin/python.bak

查看/usr/bin/python相关文件:

ll /usr/bin/python*

接着编辑/usr/bin/yum文件:

vi /usr/bin/yum

修改第一行的路径为上述ll /usr/bin/python*中查看的python2的路径即可

另一种则是修改环境变量:

首先修改Path环境变量:

export Path=/usr/local/python-3.11:$Path

这样就会使得默认找python时,先从你的新的安装目录开始寻找,并且不影响你原本的默认Python2的依赖环境,设置完Path,还要再设置一下共享库,否则会在其他依赖python3编译过程报错:

打开配置文件:

vi ~/.bashrc

 接着在文件底部添加下列行即可:

export LD_LIBRARY_PATH=/usr/local/python-3.11/lib:$LD_LIBRARY_PATH

对于LD_LIBRARY_PATH,有另外的方式,在/etc/ld.so.conf.d/目录下新增一个文件,文件内容为新安装python的库路径,再sudo ldconfig一下即可,但是笔者自己试了试,效果不好,因此还是直接设置环境变量。综上,新的python3就完整安装设置好啦~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值