栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Centos 7.x Python3的三种安装方式及遇到的各种坑

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Centos 7.x Python3的三种安装方式及遇到的各种坑

python3 安装 编译安装
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz   
 
#解压源码包 
tar -xvJf Python-3.6.8.tar.xz   
 
#创建安装目录 
mkdir /usr/local/python3
 
cd Python-3.6.8/

#安装到指定目录
./configure --prefix=/usr/local/python3
 
# 编译
make && make install

# 创建软链接
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3
rpm安装

因为默认情况下,Centos 7.x安装的python版本是2.7.5
需要安装python3,步骤如下:

  • 在如下网址下载python3对应的rpm包:
  • yum install python3*

注意:目前提供的最高版本是:3.6.8

yum安装

yum install python3

填坑 不能产生libpython3.6m.so文件

编译第三方静态库,在configure阶段增加CFLAGS=-fPIC 参数
./configure --prefix=/usr/local/python3 --enable-shared CFLAGS=-fPIC

在安装后,才会在/usr/local/python3/lib目录下产生 libpython3.6m.so和libpython3.6m.so.1.0 两个文件

如果不加上面的添加,产生的文件是: libpython3.6m.a

error while loading shared libraries: libpython3.6m.so.1.0

在运行python3 或 python3 -V时报:python: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory

解决步骤:

  • ldd是列出动态库依赖关系 ldd /usr/bin/python3
  • 查看动态库:find / -name 'libpython3.6m.so.1.0'
  • 添加动态库目录
    • 在/etc/ld.so.conf.d/ 目录下创建文件python3.conf
    • 内容是: libpython3.6m.so.1.0文件路径的目录,如/usr/local/python3/lib
  • 使配置生效 ldconfig
报python(abi)=3.6 is needed

在安装一些软件的rpm包时,会报python(abi)=3.6 is needed,导致安装失败

解决方案:采用 上面 的 rpm安装方式安装python,注意:采用编译安装方式不能解决此问题

常用的编译参数
  • –enable-optimizations参数能够让python提升10%的性能。
  • –with-ensurepip确保同时安装上pip包管理器
  • make altinstall 以避免将之前的python版本覆盖
如何配置环境变量
  • PYTHONHOME 指定PYTHON的安装目录 export PYTHONPATH=/usr/local/python3/
  • PYTHONPATH
    • export PYTHONPATH=/usr/local/python3/lib/python3.6:/usr/local/python3/lib/python3.6/site-packages/:/usr/local/python3/lib/python3.6/lib-dynload
    • 官方文档 The Module Search Path
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/882389.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号