在 Centos6.10 安装 python3 后安装第三方包遇到的问题
最近在 Centos 系统上需要安装一个 python3 版本,查看了下 centos 版本;使用以下命令查询版本
cat /etc/redhat-release
发现版本比较低,是 6.10 的
查看 python 版本
使用命令
python -V 或直接输入 python 回车
不出意料,目前的版本是 Python2.6.6;使用命令
whereis python
查看下 pythonw 安装位置,发现其中 python 还有个别名是 python2
需要升级一下了目前 python 最新稳定版本是 3.10,所有还是安装一个 python3 版本,并且保留 python2 版本
安装 python3.10
安装依赖包:输入以下命令,安装编码所需依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
下载 python3.10.5 版本
wget https://www.python.org/ftp/python/3.10.5/Python-3.10.5.tar.xz
解压编译执行以下命令解压 xz 文件
xz -d Python-3.10.5.tar.xz
执行以下命令解压 tar 文件
tar -xf Python-3.10.5.tar
依次执行以下命令:
cd Python-3.10.5
./configure prefix=/usr/local/python3make && make install
安装完成,配置软链
ln -s /usr/local/python3/bin/python3.10 /usr/bin/python3ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
验证是否安装成功;输入
python3 -V
安装第三方包 moviepy
使用 pip3 安装 moviepy,执行命令:
pip3 install moviepy
提示以下错误信息:
Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) - skipping
根据提示信息,猜测可能是 openssl 的问题,输入命令查看版本;
openssl version
发现版本是 1.0;
出现问题的主要原因是:在 Python3.7 之后的版本,依赖的 openssl,必须要是 1.1 或者 1.0.2 之后的版本,或者安装了 2.6.4 之后的 libressl。
解决方式:编译安装 openssl 官网 1.0.2 或者 1.1 之后的 openssl 包既可;
版权声明: 本文为 InfoQ 作者【技能实验室】的原创文章。
原文链接:【http://xie.infoq.cn/article/695a3f02a124d99a5326ed68b】。文章转载请联系作者。
评论