我正在尝试在Ubuntu 16.10上从源代码安装Python 3.6。
make test
当我进行测试时,安装会引发错误说..
======================================================================
ERROR: test_logincapa_with_client_certfile (test.test_imaplib.RemoteIMAP_SSLTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/anderson/Downloads/Python-3.6.1/Lib/test/test_imaplib.py", line 973, in test_logincapa_with_client_certfile
certfile=CERTFILE)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1280, in __init__
IMAP4.__init__(self, host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 197, in __init__
self.open(host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1293, in open
IMAP4.open(self, host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 294, in open
self.sock = self._create_socket()
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1285, in _create_socket
server_hostname=self.host)
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 401, in wrap_socket
_context=self, _session=session)
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 808, in __init__
self.do_handshake()
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 1061, in do_handshake
self._sslobj.do_handshake()
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 683, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:749)
======================================================================
ERROR: test_logincapa_with_client_ssl_context (test.test_imaplib.RemoteIMAP_SSLTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/anderson/Downloads/Python-3.6.1/Lib/test/test_imaplib.py", line 979, in test_logincapa_with_client_ssl_context
self.host, self.port, ssl_context=self.create_ssl_context())
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1280, in __init__
IMAP4.__init__(self, host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 197, in __init__
self.open(host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1293, in open
IMAP4.open(self, host, port)
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 294, in open
self.sock = self._create_socket()
File "/home/anderson/Downloads/Python-3.6.1/Lib/imaplib.py", line 1285, in _create_socket
server_hostname=self.host)
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 401, in wrap_socket
_context=self, _session=session)
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 808, in __init__
self.do_handshake()
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 1061, in do_handshake
self._sslobj.do_handshake()
File "/home/anderson/Downloads/Python-3.6.1/Lib/ssl.py", line 683, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: TLSV1_ALERT_UNKNOWN_CA] tlsv1 alert unknown ca (_ssl.c:749)
----------------------------------------------------------------------
Ran 95 tests in 21.126s
FAILED (errors=2)
test test_imaplib failed
1 test failed again:
test_imaplib
Total duration: 3 min 9 sec
Tests result: FAILURE
Makefile:1018: recipe for target 'test' failed
make: *** [test] Error 1
问题是什么?
答案 0 :(得分:0)
您指定的此代码似乎不存在于上一个或更新的分支上。
然而,此特定错误表明CA不是有效(可信)CA.
检查特定代码,似乎密钥是lib / test文件夹中的keycert3.pem。
CA文件是pycacert.pem,您可以将此CA添加到您的计算机信任。您可以在超级用户上查看答案,例如https://superuser.com/questions/437330/how-do-you-add-a-certificate-authority-ca-to-ubuntu
指定如何操作虽然我似乎记得只是将文件复制到/ etc / ssl / certs就足够了。 希望它有所帮助。
答案 1 :(得分:0)
首先,从其官方网站安装Python 3.6:
cd /opt
sudo wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
然后打开包装
sudo tar -xvf Python-3.6.3.tgz
这应该为您工作!