Python安装pycurl失败的解决方法

yipeiwu_com7年前Python基础

Centos安装pycurl

centos 安装pycurl
yum install python-devel curl-devel
pip3 install pycurl

Mac(老版本)安装pycurl

解决MacOS升级后出现xcrun: error: invalid active developer path, missing xcrun的问题

xcode-select --install
然后
dongchang-5:qqmusic baoshan$ pip3 install pycurl
Collecting pycurl
 Using cached pycurl-7.43.0.1.tar.gz
Building wheels for collected packages: pycurl
 Running setup.py bdist_wheel for pycurl ... done
 Stored in directory: /Users/baoshan/Library/Caches/pip/wheels/a5/5b/c8/f80900b09b49815e1f90dbae2f57e49b3f4c61071db40fb238
Successfully built pycurl
Installing collected packages: pycurl
Successfully installed pycurl-7.43.0.1

ImportError: pycurl: libcurl link-time ssl backend (openssl) is different from compile-time ssl backend (none/other)
解决办法
# pip uninstall pycurl
# export PYCURL_SSL_LIBRARY=openssl
# pip install pycurl

dongchang-5:qqmusic baoshan$ pip3 install pycurl
Collecting pycurl
Installing collected packages: pycurl
Successfully installed pycurl-7.43.0.1

上述参考自:http://www.kxtry.com/archives/398

dongchang-5:include baoshan$ python3
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pycurl
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ImportError: pycurl: libcurl link-time ssl backend (openssl) is different from compile-time ssl backend (none/other)

参考解决方案:https://www.jianshu.com/p/50b6771eb853

新版本Mac安装pycurl

但是这里有一个坑:在高版本的mac系统环境变量里是找不到openssl的头文件的
因为新版本Mac的openssl版本 LibreSSL 2.2.7

pip3 uninstall pycurl# 卸载库
export PYCURL_SSL_LIBRARY=openssl
export LDFLAGS=-L/usr/local/opt/openssl/lib
export CPPFLAGS=-I/usr/local/opt/openssl/include# openssl相关头文件路径
pip3 install pycurl --compile --no-cache-dir # 重新编译安装

至此终于搞定。


dongchang-5:pycurl-7.43.0 baoshan$ python3
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pycurl
>>>


参考:https://segmentfault.com/q/1010000012674778

搞了一个多下午,终于找到解决方法。。。

以上这篇Python安装pycurl失败的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现在Linux系统下更改当前进程运行用户

在上一篇文章中,我们讲了如何在linux上用python写一个守护进程。主要原理是利用linux的fork函数来创建一个进程,然后退出父进程运行,生成的子进程就会成为一个守护进程。细心观...

Python中SOAP项目的介绍及其在web开发中的应用

SOAP.py 客户机和服务器 SOAP.py 包含的是一些基本的东西。没有 Web 服务描述语言(Web Services Description Language,WSDL)或者任何...

Python实现的百度站长自动URL提交小工具

URL提交是百度提供的一个站长工具,用于给站长提供手工收录某些URL的接口,但是该接口有验证码识别部分,比较难弄。所以编写了如下程序进行验证码自动识别: 主要思路 获取多个验证码,提...

全面解析Python的While循环语句的使用方法

全面解析Python的While循环语句的使用方法

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为: while 判断条件: 执行语句……...

python 经典数字滤波实例

python 经典数字滤波实例

数字滤波分为 IIR 滤波,和FIR 滤波。 FIR 滤波: import scipy.signal as signal import numpy as np import pyla...