Code前端首页关于Code前端联系我们

在 Linux 下安装 Python 3.6 并避免陷阱的指南

terry 2年前 (2023-09-25) 阅读数 61 #后端开发

1。安装依赖环境

Python3在安装过程中可能会用到各种依赖库,所以在正式安装Python3之前,必须先安装这些依赖库。

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

2。下载Python3源代码

下载Python3源代码有两种方式。一种是从官方网站下载。网址如下:

[图片]

第二种方式是通过 wget 直接下载,例如以下命令:

wget https://www.python.org/ftp/python/3.6 。 1/Python-3.6.1.tgz

3。创建安装目录

安装目录可以根据个人喜好创建,例如这里创建在/usr/local/python3:

mkdir -p /usr/local/python3

4。解压源码包

使用步骤2中下载的源码包,解压命令为:

tar -zxvf Python-3.6.1.tgz

5。编译源码

首先进入解压后的源码包目录,然后配置:

cd Python-3.6.1
./configure --prefix=/usr/local/python3

然后编译,然后安装:

6.创建到 Python3

ln -s /usr/local/python3/bin/python3 /usr/bin/python3

7 的软链接。将 /usr/local/python3/bin 添加到 PATH

编辑 bash_profile 更改环境变量:

vim ~/.bash_profile

在 PATH 变量下添加 Python3 的启动文件夹: 更改完成后,按Esc 并输入:wq 保存并退出。

8。检查Python3和Pip3是否正常可用

运行以下命令(注意:V是大写V)。如果看到的结果一致,则说明Python3已经安装。

[alvin@VM_0_16_centos ~]$ python3 -V
Python 3.6.1
[alvin@VM_0_16_centos ~]$ pip3 -V
pip 9.0.1 from /usr/local/lib//site-packages (python 3.6)

避免陷阱的指南

其实网上关于Python3安装的帖子太多了,步骤其实都差不多。但实际安装后,你或​​多或少会遇到一些问题,尤其是对于初学者来说。以下是一些常见的陷阱:

坑1:configure:错误:在$PATH中找不到可接受的C编译器

这个问题比较简单,就是缺少gcc编译环境。安装gcc即可:

yum install -y gcc

当然,除此之外,源码安装也是可以的。

坑二:zipimport.ZipImportError: 无法解压数据

这个问题是因为缺少zlib相关工具包导致的。只需打包相关依赖即可:

yum -y install zlib*

安装后重新编译源码即可解决问题。

坑3:pip3:无法连接HTTPS URL,因为SSL模块不可用

这个问题是因为在./configure过程中,如果不加–with-ssl参数,则安装为标准。 SSL相关软件的功能不可用。恰巧pip3进程需要SSL模块,由于未指定,因此该功能不可用。解决办法如下:

cd Python-3.6.2
./configure --with-ssl
make
sudo make install

坑4:多lib版本问题

这个很明显,就是同一个库有多个版本。只需删除多余的版本即可。

首先检查现有版本(以openssl为例,检查哪些冲突)

# rpm -qa | grep openssl
openssl-devel-1.0.0-27.el6_4.2.x86_64

可以看到系统中安装了两个版本的openssl,我们可以保留x86版本:

rpm --erase --nodeps

然后打开更新:

# yum update "openssl*"

再问openssl,问题解决了!

# rpm -qa | grep openssl
openssl-devel-1.0.1e-16.el6_5.7.x86_64
openssl-1.0.1e-16.el6_5.7.x86_64

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门