侧边栏壁纸
博主头像
程彬彬博主等级

业精于勤 荒于嬉 行成于思 毁于随

  • 累计撰写 101 篇文章
  • 累计创建 26 个标签
  • 累计收到 20 条评论

目 录CONTENT

文章目录

centOS7升级Python3

程彬彬
2020-05-21 / 0 评论 / 0 点赞 / 1,512 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2020-05-21,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
广告 广告

查看当前系统版本信息

uname -a

Linux iZ2ze7pikf0xtlj560j35xZ 2.6.32-754.17.1.el6.x86_64 #1 SMP Tue Jul 2 12:42:48 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

查看当前Python版本

python -v

Python 2.6.6

切换工作目录至/usr/local

cd /usr/local

下载目标python版本压缩包

wget http://npm.taobao.org/mirrors/python/3.8.3/Python-3.8.3.tgz

解压压缩包

tar -xzvf Python-3.8.3.tgz

在当前目录下创建文件夹(/usr/local)--python3

mkdir python3

安装必要的环境

yum -y groupinstall "Development tools"
#yum -y install zlib-devel bzip2-devel openssl-devel ncurses-#devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
#yum -y install libffi-devel 
#yum install -y epel-release
#yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++ openssl-devel

编译与安装

执行步骤:
进入解压文件路径

cd Python-3.8.3

生成makefile文件

./configure --prefix=/usr/local/python3 --enable-shared  --enable-optimizations

--enable-shared # 启用共享,方便其他依赖python的一些内置库(比如 mysqlclient) 的资源的正常安装
--enable-optimizations # 是优化选项(LTO,PGO 等)加上这个 flag 编译后,性能有 10% 左右的优化

对makefile文件进行操作

make

安装

make install

创建python3软链

备份旧python与pip

mv /usr/bin/python /usr/bin/python2_old
mv /usr/bin/pip /usr/bin/pip2_old 

修改软链接

ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

查看版本信息

python3 -V
pip3 -V

image.png

问题1:

python3: error while loading shared libraries: libpython3.8.so.1.0: cannot open shared object file: No such file or directory

原因:

原因是因为python运行时没有加载到libpython3.8.so.1.0 这个库文件
解决:

cp /usr/local/python3/lib/libpython3.8.so.1.0 /usr/lib64/

问题2:

由于修改了python的版本,会导致一些依赖于旧版本的程序出现错误,如yum,可进行如下配置:

解决:
打开yum文件

vim /usr/bin/yum

image.png

0
广告 广告

评论区