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统计字母、空格、数字等字符个数的实例

如下所示: # -*- coding: utf-8 -*- # 要求:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 def count(s): count_a...

python将每个单词按空格分开并保存到文件中

python将每个单词按空格分开并保存到文件中

核心代码 # -*- coding: utf-8 -*- ''' python读取英文文件,将每个单词按照空格分开,并将每个单词独自放一行 ''' def dcfenhang(inf...

python pytest进阶之fixture详解

前言 学pytest就不得不说fixture,fixture是pytest的精髓所在,就像unittest中的setup和teardown一样,如果不学fixture那么使用pytes...

python使用锁访问共享变量实例解析

本文研究的主要是python使用锁访问共享变量,具体介绍和实现如下。 python 做多线程编程时,多个线程若同时访问某个变量,可能会对变量数据造成破坏,pyhon中的threading...

Python httplib,smtplib使用方法

例一:使用httplib访问某个url然后获取返回的内容:import httplib conn=httplib.HTTPConnection("www.ting...