我刚刚在centos 6.4虚拟机上下载了Python3.4.1,并按照自述文件中的说明进行了操作。首先我做了./configure,然后make,然后make test。在
当我运行maketest时,它出现了一个错误,我不知道为什么,我只是完全按照指令进行操作。输出如下:
test test_smtpnet failed -- Traceback (most recent call last):
File "/usr/local/Python-3.4.1/Lib/test/test_smtpnet.py", line 30, in test_connect_starttls
server = smtplib.SMTP(self.testServer, self.remotePort)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 242, in __init__
(code, msg) = self.connect(host, port)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 321, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 292, in _get_socket
self.source_address)
File "/usr/local/Python-3.4.1/Lib/socket.py", line 509, in create_connection
raise err
File "/usr/local/Python-3.4.1/Lib/socket.py", line 495, in create_connection
sock = socket(af, socktype, proto)
File "/usr/local/Python-3.4.1/Lib/socket.py", line 123, in __init__
_socket.socket.__init__(self, family, type, proto, fileno)
OSError: [Errno 97] Address family not supported by protocol
368 tests OK.
1 test failed:
test_smtpnet
7 tests altered the execution environment:
test_calendar test_float test_locale test_site test_strptime
test_types test_warnings
12 tests skipped:
test_curses test_devpoll test_gdb test_kqueue test_msilib
test_ossaudiodev test_startfile test_tk test_ttk_guionly
test_winreg test_winsound test_zipfile64
Re-running failed tests in verbose mode
Re-running test 'test_smtpnet' in verbose mode
test_connect_starttls (test.test_smtpnet.SmtpTest) ... ERROR
test_connect (test.test_smtpnet.SmtpSSLTest) ... ok
test_connect_default_port (test.test_smtpnet.SmtpSSLTest) ... ok
test_connect_using_sslcontext (test.test_smtpnet.SmtpSSLTest) ... ok
test_connect_using_sslcontext_verified (test.test_smtpnet.SmtpSSLTest) ... ok
======================================================================
ERROR: test_connect_starttls (test.test_smtpnet.SmtpTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/local/Python-3.4.1/Lib/test/test_smtpnet.py", line 30, in test_connect_starttls
server = smtplib.SMTP(self.testServer, self.remotePort)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 242, in __init__
(code, msg) = self.connect(host, port)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 321, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/local/Python-3.4.1/Lib/smtplib.py", line 292, in _get_socket
self.source_address)
File "/usr/local/Python-3.4.1/Lib/socket.py", line 509, in create_connection
raise err
File "/usr/local/Python-3.4.1/Lib/socket.py", line 495, in create_connection
sock = socket(af, socktype, proto)
File "/usr/local/Python-3.4.1/Lib/socket.py", line 123, in __init__
_socket.socket.__init__(self, family, type, proto, fileno)
OSError: [Errno 97] Address family not supported by protocol
----------------------------------------------------------------------
Ran 5 tests in 42.864s
FAILED (errors=1)
test test_smtpnet failed
make: *** [test] Error 1
因此,似乎∗socket模块尝试使用协议不支持的“地址族”(不管是什么玩意儿)。这个例外可以再含糊一点吗?在
有人知道我在这里遗漏了什么吗?在
看起来测试用例确实需要启用IPv6。因此,在未启用IPv6支持的系统上,它将失败。检查
ip a s
的输出,查看VM是否有IPv6地址集,例如通常以fe80::
开头。对于IPv4系列,IPv4地址可以是IPv4或inetaf。 实际上,这是一个测试用例错误。在相关问题 更多 >
编程相关推荐