CentOS7默认自带了Python2.7版本,但是最好还是安装Python3.x。本文以Python3.7.5为例。
一、Python源代码编译安装
安装必要工具 yum-utils ,它的功能是管理repository及扩展包的工具 (主要是针对repository)
sudo yum install yum-utils |
使用yum-builddep为Python3构建环境,安装缺失的软件依赖,使用下面的命令会自动处理.
sudo yum-builddep python |
完成后下载Python3的源码包(使用华为镜像):
curl -O https://mirrors.huaweicloud.com/python/3.7.5/Python-3.7.5.tgz |
最后一步,编译安装Python3,默认的安装目录是 /usr/local 如果你要改成其他目录可以在编译(make)前使用 configure 命令后面追加参数 –prefix=/alternative/path
来完成修改。
tar xf Python-3.7.5.tgz |
至此你已经在你的CentOS系统中成功安装了python3、pip3、setuptools,查看python版本
python3 -V # 注意不是Python -V |
二、将Python3作为默认版本
如果要使用Python3作为默认版本,即直接输入Python -V
或者python
就可以有版本信息输出,还需要配置一个文件。
首先查看python3的位置
which python3 |
然后配置文件
vi ~/.bash_profile |
写入
PATH="/usr/local/bin:${PATH}" |
按照vim格式保存退出,然后更新
source ~/.bash_profile |
输入python -V
验证
[root@iZuf63v13g2lh7q8443kxnZ statistics]# python -V |
输入python
验证
[root@iZuf63v13g2lh7q8443kxnZ statistics]# python |
其实还可以继续配置全局的etc/profile文件
vi /etc/profile |
写入
export PYTHON_HOME=/usr/local/bin/python3 |
按照vim格式保存退出,然后更新
source ~/.bash_profile |
完成
关于pip报错
pip install --upgrade pip |
使用上述命令后仍然报错egg_info
:
并且报错原因几乎一样,尝试以下命令,仍以失败告终:
pip install --upgrade --force pip |
问题解决
首先,卸载pip:
sudo apt-get remove python-pip # ubuntu |
卸载后,我们前往官网下载我们需要的版本(速度很快),在这里我推荐 20.3.3,因为我在尝试安装22.2.2时,遇到了问题。进入上面的链接,我们选择下载 pip-20.3.3.tar.gz
下载下来后,进入文件所在的目录,进行解压:
sudo tar -zxvf pip-20.3.3.tar.gz |
进入解压后的目录,进行安装:
cd /pip-20.3.3 |
而后继续使用pip install
将不会再出错。如果还是不行就用pip3 install
。