快速在linux上配置python3.x的环境以及可能报错的解决方案(python其它版本可同样方式安装)

简介: 这篇文章介绍了在Linux系统上配置Python 3.x环境的步骤,包括安装系统依赖、下载和解压Python源码、编译安装、修改环境变量,以及常见安装错误的解决方案。

一. linux安装python3.x

下面案例是安装python3.9 步骤,也可以指定其他版本安装

重要!!! python3.11.x请参考 :linux centos上安装python3.11.x详细完整教程

步骤1:安装系统依赖(重要)

这一步不执行,后面各种错误。

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 python3-devel libffi-devel
步骤2:下载源码并解压:
# 下载源码
wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz

# 解压
tar -zxvf Python-3.9.0.tgz

cd Python-3.9.0
步骤3:编译安装

指定安装目录为/opt/python39

./configure --prefix=/opt/python39 
make && make install
步骤4:修改环境变量和验证

追加到PATH中,执行 vim /etc/profile 中追加

export PATH=/opt/python39/bin:$PATH

修改完成之后激活:source /etc/profile

最后,版本号验证

python3 --version
pip3 --version

在这里插入图片描述

二. 报错汇总

报错1
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for python3.9... no
checking for python3... no
checking for python... python
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... "linux"
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/root/Python-3.9.0':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details

解决方案:
查看得知未安装合适的编译器。

sudo yum install gcc-c++

(使用sudo yum install gcc-c++时会自动安装/升级gcc及其他依赖的包。)

重新执行: ./configure, 即可成功!

报错2

输入pip3 list , 出现下面情况时:

-bash: pip3: 未找到命令

先安装扩展源EPEL,yum -y install epel-release , 这个扩展源提供了很多软件包的下载。

安装 pip3
Centos系统:yum install python3-pip -y
Ubuntu等系统:sudo apt install python3-pip -y

升级pip3可用指令:pip3 install --upgrade pip

报错3 安装过Python3的其他版本

更改python3和pip3的指向即可。或者先卸载之前的python3,再安装新版本的python3

# 删除原先的Python3和pip3
rm -rf /usr/bin/python3
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
rm -rf /usr/bin/pip3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
ln -s /opt/python39/bin/pip3 /usr/local/bin/pip3

ln -s /opt/python39/lib/python3.9/site-packages/pip /usr/local/bin/pip3

三. 其它

1. 查看是否安装: which python
2. 确定安装目录: 此处安装在:/opt/python3目录
3. 安装依赖:
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
4. 下载安装包
cd /opt/software/   

wget  https://www.python.org/ftp/python/3.9.13/Python-3.9.13.tgz
5. 解压压缩包并安装
1. 解压  
    tar  -xvf Python-3.9.13.tgz   
2. 进入解压的文件夹  
    cd   Python-3.9.13  
3. 执行初始化,配置安装路径  
    ./configure prefix=/opt/python3  
4. 执行编译安装  
    make   
    make install

5. 添加环境变量:  
    vim  /etc/profile  
    export PATH=/opt/python3/bin:$PATH  

    source /etc/profile
6. 添加软连接
[root@ec-new-app opt]# ln -s /opt/python3/bin/python3.9 /usr/bin/python3
[root@ec-new-app opt]# ln -s /opt/python3/bin/pip3.9 /usr/bin/pip3
[root@ec-new-app opt]# python3  -V
Python 3.9.13
[root@ec-new-app opt]# pip3  -V
pip 22.0.4 from /opt/python3/lib/python3.9/site-packages/pip (python 3.9)

能返回版本号就说明已经安装完成了!!

# 查看软连接指向
[root@ec-new-app opt]# ll /usr/bin/ |grep python
-rwxr-xr-x.   1 root root       11232 Aug 13  2019 abrt-action-analyze-python
lrwxrwxrwx    1 root root          23 May 23 17:09 pip3 -> /opt/python3/bin/pip3.9
lrwxrwxrwx.   1 root root           7 Jun 10  2022 python -> python2
lrwxrwxrwx.   1 root root           9 Jun 10  2022 python2 -> python2.7
-rwxr-xr-x.   1 root root        7216 Aug  7  2019 python2.7
lrwxrwxrwx    1 root root          26 May 23 17:07 python3 -> /opt/python3/bin/python3.9

[root@ec-new-app opt]# ll /usr/bin/ |grep pip
-rwxr-xr-x.   1 root root        2291 Jul 31  2015 lesspipe.sh
lrwxrwxrwx    1 root root          23 May 23 17:09 pip3 -> /opt/python3/bin/pip3.9

附:卸载python3
1、进入源码目录:cd /path/to/python3/source
2、清理安装的文件:make clean
3、卸载python3:make uninstall
或者
1、卸载python3:rpm -qa|grep python3|xargs rpm -ev --allmatches --nodeps 卸载pyhton3
2、whereis python3 |xargs rm -frv 删除所有残余文件。成功卸载!
3、whereis python 查看现有安装的python

若重新安装更高版本,则进入:https://www.python.org/ftp/python/ 选择更高版本即可。

相关文章
|
2天前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
33 0
|
2月前
|
Ubuntu Linux
Ubuntu 23.04 用上 Linux 6.2 内核,预计下放到 22.04 LTS 版本
Linux 6.2 带来了多项内容更新,修复了 AMD 锐龙处理器设备在启用 fTPM 后的运行卡顿问题,还增强了文件系统。
|
2月前
|
Ubuntu Linux
Ubuntu24.04LTS默认采用Linux 6.8内核,实验性版本可通过PPA获得
IT之家提醒,当下的 Ubuntu 23.10 也是一个“短期支持版本”,该版本将在今年 7 月终止支持,而今年 4 月推出的 Ubuntu 24.04 LTS 长期支持版本将获得 5 年的更新支持。
|
13天前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
188 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
16天前
|
JSON 缓存 开发者
淘宝商品详情接口(item_get)企业级全解析:参数配置、签名机制与 Python 代码实战
本文详解淘宝开放平台taobao.item_get接口对接全流程,涵盖参数配置、MD5签名生成、Python企业级代码实现及高频问题排查,提供可落地的实战方案,助你高效稳定获取商品数据。
|
2月前
|
JavaScript 前端开发 机器人
【Azure Bot Service】在中国区Azure上部署机器人的 Python 版配置
本文介绍了在中国区Azure上使用Python SDK配置Azure Bot Service时遇到的问题及解决方案,涵盖参数设置与适配器配置,适用于希望在Azure中国区部署Python机器人的开发者。
|
2月前
|
Ubuntu 安全 小程序
linux|ubuntu.v18.10版本即将发布,linux桌面让您动心
如果你使用闭源系统,那永远也就别想了!有了这样的需求,也许最终将linux带到人类大众通用市场的是我们中国!
57 0
|
2月前
|
Web App开发 Ubuntu Linux
又该换Linux版本了!
如果你经常用谷歌搜索,使用终端输入命令,推荐你使用Fedora而不是Ubuntu。 如果你不是一个技术用户或程序员,仍推荐使用Ubuntu,还不动手去试试,别忘了将你的体验留在评论区哦~