[英]Pip Install Twisted Error 1
When using pip install Twisted
in virtualenv on Mac osx 10.9.4, I get this result: 在Mac osx 10.9.4上使用
pip install Twisted
in virtualenv时,我得到了这个结果:
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/9r/3b500gbs3093ms87mqqbckr80000gn/T/pip-build-doynftp7/twisted/
I am not sure how to resolve. 我不知道该如何解决。 I used easy_install, but I get a SSL verification issue.
我使用了easy_install,但是我遇到了SSL验证问题。 Anyone have similar issue?
有人有类似的问题吗? The rest of error message is below.
其余的错误消息如下。
Collecting twisted
Using cached Twisted-16.6.0.tar.bz2
Complete output from command python setup.py egg_info:
Download error on https://pypi.python.org/simple/incremental/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749) -- Some packages may not be found!
Couldn't find index page for 'incremental' (maybe misspelled?)
Download error on https://pypi.python.org/simple/: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749) -- Some packages may not be found!
No local packages or working download links found for incremental>=16.10.1
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/9r/3b500gbs3093ms87mqqbckr80000gn/T/pip-build-lqvxc68n/twisted/setup.py", line 21, in <module>
setuptools.setup(**_setup["getSetupArgs"]())
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/distutils/core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/setuptools/dist.py", line 317, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/setuptools/dist.py", line 372, in fetch_build_eggs
replace_conflicting=True,
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/pkg_resources/__init__.py", line 851, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/pkg_resources/__init__.py", line 1123, in best_match
return self.obtain(req, installer)
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/pkg_resources/__init__.py", line 1135, in obtain
return installer(requirement)
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/setuptools/dist.py", line 440, in fetch_build_egg
return cmd.easy_install(req)
File "/Users/Complex-Cauchy/1/lib/python3.6/site-packages/setuptools/command/easy_install.py", line 668, in easy_install
raise DistutilsError(msg)
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('incremental>=16.10.1')
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/9r/3b500gbs3093ms87mqqbckr80000gn/T/pip-build-lqvxc68n/twisted/
Running openssl s_client -showcerts -connect pypi.python.org:443
returns the following: 运行
openssl s_client -showcerts -connect pypi.python.org:443
将返回以下内容:
CONNECTED(00000003)
depth=1 /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 Extended Validation Server CA
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
0 s:/businessCategory=Private Organization/1.3.6.1.4.1.311.60.2.1.3=US/1.3.6.1.4.1.311.60.2.1.2=Delaware/serialNumber=3359300/street=16 Allen Rd/postalCode=03894-4801/C=US/ST=NH/L=Wolfeboro/O=Python Software Foundation/CN=www.python.org
i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 Extended Validation Server CA
-----BEGIN CERTIFICATE-----
MIIIWjCCB0KgAwIBAgIQCXCW7BLw16II/CMOsOFe/jANBgkqhkiG9w0BAQsFADB1
..
-----END CERTIFICATE-----
1 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 Extended Validation Server CA
i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert High Assurance EV Root CA
-----BEGIN CERTIFICATE-----
MIIEtjCCA56gAwIBAgIQDHmpRLCMEZUgkmFf4msdgzANBgkqhkiG9w0BAQsFADBs
....
-----END CERTIFICATE-----
Server certificate
subject=/businessCategory=Private Organization/1.3.6.1.4.1.311.60.2.1.3=US/1.3.6.1.4.1.311.60.2.1.2=Delaware/serialNumber=3359300/street=16 Allen Rd/postalCode=03894-4801/C=US/ST=NH/L=Wolfeboro/O=Python Software Foundation/CN=www.python.org
issuer=/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 Extended Validation Server CA
---
No client certificate CA names sent
---
SSL handshake has read 3524 bytes and written 456 bytes
---
New, TLSv1/SSLv3, Cipher is AES128-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : AES128-SHA
Session-ID: BC7695FF86D2B82B20468A13E3F3E13AE23776B500E64665305EEBAF49BB54D1
Session-ID-ctx:
Master-Key:8D25B34237A3C74E90317D87BA74A2AAF0E8C424FB2ADE3D72E5F234D5E043C4527641290B928B3A22 1BE7D44116CFB1
Key-Arg : None
Start Time: 1487035770
Timeout : 300 (sec)
Verify return code: 0 (ok)
I had the same issue on a Mac OSX 10.11.6 in a new virtualenv with a fresh install of Python3.6.1. 我在Mac OSX 10.11.6上使用全新安装的Python3.6.1在新的virtualenv中遇到了同样的问题。 In my case, I had old versions of the Twisted dependency incremental installed, which prevented the installation.
在我的情况下,我安装了旧版本的Twisted依赖增量 ,这阻止了安装。
pip install --upgrade incremental
pip install Twisted
Note I: I was installing a whole array of packages from a requirements file where the same incremental version was specified. 注意I:我从需求文件中安装了一整套软件包,其中指定了相同的增量版本。 I really wonder why the upgrade of incremental helped and have no clue what actually went wrong.
我真的很想知道为什么增量的升级有助于并且不知道究竟出了什么问题。 If someone can clarify, that would be great.
如果有人能澄清,那就太好了。
Note II: Installing incremental ahead of of Twisted seems to be necessary on fresh installs, too [Experienced when working with CentOS7]. 注意II:在新安装时,在Twisted之前安装增量似乎也是必要的[使用CentOS7时经验丰富]。
Note III: The issue was communicated to the amazing Twisted community and once Twisted ticket #9457 is implemented and in the release this question and my answer should become obsolete. 注意三:问题已经传达给了惊人的Twisted社区,一旦实施了扭曲的机票#9457 ,在发布这个问题时我的答案应该过时了。
The error you reported is incomplete. 您报告的错误不完整。 There are almost certainly more details above it in the
pip
output. 在
pip
输出中几乎肯定有更多细节。 It would help if edit them into your question. 如果将它们编辑到您的问题中会有所帮助。
A survey of similar questions: 对类似问题的调查:
Suggests that: 表明:
But the additional certificate verification failure errors you've included suggest it's not caused by any of these. 但是,您包含的其他证书验证失败错误表明它不是由任何这些引起的。 Instead, a dependency cannot be downloaded because pip can't do a TLS handshake with the PyPI server it needs to download the dependency from.
相反,无法下载依赖项,因为pip无法与从中下载依赖项所需的PyPI服务器进行TLS握手。
This could be caused by many different things. 这可能是由许多不同的事情引起的。 Can your system's browsers load
https://pypi.python.org/
? 您的系统的浏览器可以加载
https://pypi.python.org/
吗? If not, perhaps there's something wrong system-wide: you might have outdated certificate authority certificates or there might be a man-in-the-middle attack taking place. 如果没有,也许系统范围内出现了问题:您可能已经过时了证书颁发机构证书,或者可能发生了中间人攻击。
openssl s_client
can sometimes be useful for debugging issues like these. openssl s_client
有时可用于调试这些问题。 Try: 尝试:
openssl s_client -showcerts -connect pypi.python.org:443
This may give you more details about what's happening at the TLS layer. 这可能会为您提供有关TLS层发生的更多详细信息。 If
openssl s_client
also has trouble verifying the certificate, you know there's something wrong system-wide. 如果
openssl s_client
也无法验证证书,那么您知道系统范围内存在问题。 If not, we can narrow it down to a pip or Python problem. 如果没有,我们可以将其缩小到一个点或Python问题。
FWIW I was getting the same bogus error trying to install twisted: FWIW我在尝试安装twisted时遇到同样的错误:
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('incremental>=16.10.1')
In my case I had accidentally installed an ancient setuptools that was messing up pip
. 在我的情况下,我不小心安装了一个古老的设置工具,搞乱了
pip
。 It came from a python setup.py install
of a zfec 1.4.22 tarball. 它来自zfec 1.4.22 tarball的
python setup.py install
。
I fixed this by removing that setuptools ( rm -rf /usr/local/lib/python2.7/dist-packages/setuptools-0*
). 我通过删除setuptools来解决这个问题(
rm -rf /usr/local/lib/python2.7/dist-packages/setuptools-0*
)。 This allowed the pip install twisted
to work and allowed me to specify a version ( twisted==18.9.0
). 这允许
pip install twisted
工作,并允许我指定一个版本( twisted==18.9.0
)。 The old setuptools was also causing latest twisted 19 to be installed in some situations. 旧的setuptools也导致在某些情况下安装最新的twisted 19。
Try upgrading pip packages. 尝试升级pip包。
sudo pip install --upgrade pip
and Twisted has two required dependencies: 和Twisted有两个必需的依赖项:
Installing a C compiler Since installing Twisted from source involves compiling C code, on OS X or Windows you'll need to install a C compiler before you can install Twisted. 安装C编译器由于从源代码安装Twisted涉及编译C代码,因此在OS X或Windows上,您需要安装C编译器才能安装Twisted。
Installing zope.interface When installing from source, before you can use Twisted, you'll also need to install zope.interface, which you can download from the Twisted home page. 安装zope.interface从源代码安装时,在使用Twisted之前,还需要安装zope.interface,可以从Twisted主页下载。
And install it with your steps or follow this link 并按照您的步骤安装或按照此链接
I had a similar problem when installing Twisted on my MacBook, after trying many different ways, I successfully install Twisted using conda. 我在MacBook上安装Twisted时遇到了类似的问题,在尝试了很多不同的方法之后,我成功地使用conda安装了Twisted。
You can try it, using either Anaconda or miniconda. 你可以尝试使用Anaconda或miniconda。
https://conda.io/docs/download.html https://conda.io/docs/download.html
https://stackoverflow.com/a/20994790/1294704 https://stackoverflow.com/a/20994790/1294704
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.