日常笔记-centos7安装python3.6.6

centos7安装python3.6.6以及报错解决

下载包

cd 到/tmp目录下

wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz

解压

tar -xzvf Python-3.6.6.tgz -C /tmp

进入

cd Python-3.6.6/

这一步可能会报错原因没有gcc库

./configure --prefix=/usr/local

由于本机缺少gcc编译环境

1、通过yum安装gcc编译环境:yum install -y gcc

2、本机没有安装yum功能,可下载gcc安装包:https://gcc.gnu.org/

这一步可能会报错原因没有安装zlib相关依赖包

make

make altinstall

报错提示:zipimport.ZipImportError: can't decompress data; zlib not available make: *** [altinstall] Error 1

解决:

yum -y install zlib*

稍后继续执行

更改/usr/bin/python链接

cd/usr/bin

mv python python.backup

ln -s /usr/local/bin/python3.6 /usr/bin/python

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

更改yum脚本的python依赖

cd /usr/bin

ls yum*

vi /usr/bin/yum

vi /usr/libexec/urlgrabber-ext-down

更改以上文件头为>!/usr/bin/python 改为 #!/usr/bin/python2大功告成

python3 和pip 都可以用了。



pip 报错处理

  • python pip 出现locations that require TLS/SSL异常处理方法

    最近在Centos 7上安装Python3.6.6之后,使用pip命令出现了问题,提示说找不到ssl模块,出现错误如下:
    pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
    Could not fetch URL https:*******: There was a problem confirming the ssl certificate: 
    Can't connect to HTTPS URL because the SSL module is not available. - skipping

查阅资料发现,在./configure过程中,如果没有加上–with-ssl参数时,默认安装的软件涉及到ssl的功能不可用,
刚好pip3过程需要ssl模块,而由于没有指定,所以该功能不可用。

        1、查看openssl安装包,发现缺少openssl-devel包 
        rpm -aq | grep openssl 
        openssl-1.0.2k-16.el7.x86_64
        openssl-libs-1.0.2k-16.el7.x86_64

        2、yum安装openssl-devel :
        yum install openssl-devel -y 

        3、查看安装结果 
        rpm -aq | grep openssl 
        openssl-1.0.2k-16.el7.x86_64
        openssl-devel-1.0.2k-16.el7.x86_64
        openssl-libs-1.0.2k-16.el7.x86_64

重新对python3.6进行编译安装,用一下过程来实现编译安装:

    cd Python-3.6.6
    ./configure --with-ssl
    make
    make altinstall

猜你喜欢

转载自blog.51cto.com/11802580/2328209