python3的安装过程,以及使用pip3安装出错,提示错误找不到SSL

 在Ubuntu16.04上安装Python3.6.4之后,使用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. - skippingpip 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

  安装Python3.6的操作如下:


1.下载python安装包:
    https://www.python.org/downloads/
2.解压安装包:
    tar -xvzf Python-3.6.4.tgz3. 安装python3    创建目录:sudo mkdir -p /usr/local/python3(这是系统安装python的路径)
    解压:tar -zxvf Python-3.6.4.tgz    进入解压目录:cd Python-3.6.44. 检查安装平台属性,系统是否有编译时所需要的额外库,以及库的版本是否满足编译需要    ./configure --prefix=/usr/local/python35. 编译源码    make
6. 成功编译之后,安装
    sudo make install7. 建立python3的软链接    sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3
8. 将/usr/local/python3/bin加入PATH中    1)打开~/.bash_profile文件:vim ~/.bash_profile
    2)在文件最后添加如下代码:
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    PATH=$PATH;#HOME/bin:/usr/local/python3/bin
    export PATH
    3)修改完执行以下命令,让上一步的修改生效:source ~/.bash_profile
9. 检查Python3及pip3是否正常可用    python3 -V
    pip3 -V1.下载python安装包:
    https://www.python.org/downloads/
2.解压安装包:
    tar -xvzf Python-3.6.4.tgz3. 安装python3    创建目录:sudo mkdir -p /usr/local/python3(这是系统安装python的路径)
    解压:tar -zxvf Python-3.6.4.tgz    进入解压目录:cd Python-3.6.44. 检查安装平台属性,系统是否有编译时所需要的额外库,以及库的版本是否满足编译需要    ./configure --prefix=/usr/local/python35. 编译源码    make
6. 成功编译之后,安装
    sudo make install7. 建立python3的软链接    sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3
8. 将/usr/local/python3/bin加入PATH中    1)打开~/.bash_profile文件:vim ~/.bash_profile
    2)在文件最后添加如下代码:
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi
    PATH=$PATH;#HOME/bin:/usr/local/python3/bin
    export PATH
    3)修改完执行以下命令,让上一步的修改生效:source ~/.bash_profile
9. 检查Python3及pip3是否正常可用    python3 -V
    pip3 -V

  在安装完之后,我们希望用pip3命令来安装numpy。首先,用如下命令安装pip3:


sudo install python3-pipsudo install python3-pip

  安装完之后,使用pip3安装numpy:


sudo pip install python-numpysudo pip install python-numpy

  但是此时就出错了,显示本文开始提到的错误,大致意思就是安装过程需要SSL,但是那个SSL找不到。

  本人查阅网上资料,发现openSSL是系统自带的,所以一定是安装了的,本人用以下命令尝试再次安装openssl:


sudo apt-get install openssl
sudo apt-get install libssl-devsudo apt-get install openssl
sudo apt-get install libssl-dev

  但是安装结果显示是对其进行更新(update),这说明系统已经安装了openssl。但是pip3就是找不到ssl模块。

  本人进入python3中,然后进行ssl导入操作:


import sslimport ssl

  结果出错,错误如下:


no moudle named _sslno moudle named _ssl

  显示没有ssl模块。本人再进入python中(即系统自带的python2.7中),进行ssl导入操作:


import sslimport ssl

  发现并没有显示错误,导入正常。这说明openssl已经安装了,只是python2可以调用,新安装的python3却不能调用。

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

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


cd Python-3.6.4
./configure --prefix=/usr/local/python3 --with-ssl
make
sudo make installsudo mv /usr/bin/python3 /usr/bin/python3_baksudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3cd Python-3.6.4
./configure --prefix=/usr/local/python3 --with-ssl
make
sudo make installsudo mv /usr/bin/python3 /usr/bin/python3_baksudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3

  这样就允许安装的python3使用ssl功能模块,进入python3中,执行import ssl发现未出错,正常再次调用pip3指令来安装numpy,发现正常,问题解决! 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值