使用pip安装pyopenssl时出错

时间:2016-10-17 15:06:14

标签: python linux pip redhat

我正在尝试使用python pip安装不同的软件包,但是我收到了这个错误:

  

文件   “/usr/local/lib/python2.7/site-packages/pip-8.1.2-py2.7.egg/pip/_vendor/       cnx.set_tlsext_host_name(server_hostname)AttributeError:'_ socketocket'对象没有属性'set_tlsext_host_name'

我的一些解决方法我需要安装pyoepnssl

当我尝试手动安装pyopenssl时,我收到错误:

  

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall   -Wstrict-prototypes -fPIC -I / usr / local / include / python2.7 -c OpenSSL / ssl / connection.c -o   建立/ temp.linux-x86_64-2.7 / OpenSSL的/ SSL / connection.o   OpenSSL / ssl / connection.c:在函数âssl_Connection_set_context中:   OpenSSL / ssl / connection.c:289:警告:隐式声明   函数âSSL_set_SSL_CTXâOpenSSL/ ssl / connection.c:在函数中   âssl_Connection_get_servernameâ:OpenSSL / ssl / connection.c:313:错误:   âTLSEXT_NAMETYPE_host_nameâ未声明(首次使用此功能)   OpenSSL / ssl / connection.c:313:错误:(每个未声明的标识符是   仅报告一次OpenSSL / ssl / connection.c:313:错误:每个   函数它出现在。)OpenSSL / ssl / connection.c:320:警告:   隐式声明函数âSSL_get_servernameâ   OpenSSL / ssl / connection.c:320:警告:赋值使指针来自   没有强制转换的整数OpenSSL / ssl / connection.c:在函数中   âssl_Connection_set_tlsext_host_nameâ:OpenSSL / ssl / connection.c:346:   警告:隐式声明函数âSSL_set_tlsext_host_nameâ   错误:命令'gcc'失败,退出状态为1

我已经安装了所有库gcc,python-devel,gcc-c ++,libffi-devel,openssl-devel。我正在使用Red Hat 4

我不知道我是否遗漏了一些图书馆。

任何建议。

提前致谢

1 个答案:

答案 0 :(得分:3)

For Ubuntu:

sudo apt-get purge python-openssl
sudo apt-get install libffi-dev
sudo pip install pyopenssl

For RedHat:

sudo yum remove pyOpenSSL
sudo pip install pyopenssl

方法2:

easy_install http://pypi.python.org/packages/source/p/pyOpenSSL/pyOpenSSL-0.12.tar.gz

执行上述行可能会解决您的问题。