使用 pip 安装 pyopenssl 时出错

jos*_*git 2 python linux redhat pip

我正在尝试使用 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:'_socketobject'对象没有属性'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 build/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。我正在使用红帽 4

我不知道我是否缺少一些图书馆。

任何建议。

提前致谢

Say*_*ane 5

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
Run Code Online (Sandbox Code Playgroud)

方法二:

easy_install http://pypi.python.org/packages/source/p/pyOpenSSL/pyOpenSSL-0.12.tar.gz
Run Code Online (Sandbox Code Playgroud)

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