我正在使用 Python 2.7、Boto 2.6 和 py2exe 创建与亚马逊的 Dynamodb 交互的 Windows 可执行文件。该应用程序使用 py2exe 进行编译,但在与任何 AWS 交互时会无限期挂起。
这是我的 py2exe 的 setup.py
from distutils.core import setup
import py2exe
import sys
setup(windows=[{"script" : "smart_gui.py"}],
options={"py2exe" : {
"includes" : ["sip", "PyQt4", "simplejson", "email","lxml","http", "urllib",
"email"],
"packages":["gzip", "email"],
"excludes":["Carbon","_scproxy", "Carbon.Files"]}})
这条线导致程序无限期地移交。
table = self.dynamo.get_table(self.conf['users_table'])
这是py2exe的相关输出
The following modules appear to be missing
['Crypto.PublicKey._fastmath', 'builtins', 'cchardet', 'certifi', 'email.Charset',
'email.Encoders', 'email.Errors', 'email.Generator', 'email.Header',
'email.Iterators', 'email.MIMEAudio', 'email.MIMEBase', 'email.MIMEImage',
'email.MIMEMessage', 'email.MIMEMultipart', 'email.MIMEText', 'email.Message',
'email.Parser', 'email.Utils', 'email.base64MIME', 'email.quopriMIME', 'http.client',
'http.cookiejar', 'http.cookies', 'kerberos', 'oauthlib.common', 'oauthlib.oauth1',
'oauthlib.oauth1.rfc5849', 'packages.ssl_match_hostname.CertificateError',
'packages.ssl_match_hostname.match_hostname', 'queue', 'simplejson._speedups',
'test.test_support', 'urllib.parse', 'urllib.request']
Make sure you have the license if you distribute any of them, and
make sure you don't distribute files belonging to the operating system.
OLEAUT32.dll - C:\Windows\system32\OLEAUT32.dll
USER32.dll - C:\Windows\system32\USER32.dll
MSVCP90.dll - C:\Users\karl\Desktop\Smart_Select\MSVCP90.dll
SHELL32.dll - C:\Windows\system32\SHELL32.dll
KERNEL32.dll - C:\Windows\system32\KERNEL32.dll
WINMM.dll - C:\Windows\system32\WINMM.dll
COMDLG32.dll - C:\Windows\system32\COMDLG32.dll
ADVAPI32.dll - C:\Windows\system32\ADVAPI32.dll
NETAPI32.dll - C:\Windows\system32\NETAPI32.dll
WS2_32.dll - C:\Windows\system32\WS2_32.dll
WINSPOOL.DRV - C:\Windows\system32\WINSPOOL.DRV
GDI32.dll - C:\Windows\system32\GDI32.dll
IMM32.dll - C:\Windows\system32\IMM32.dll
VERSION.dll - C:\Windows\system32\VERSION.dll
ole32.dll - C:\Windows\system32\ole32.dll
ntdll.dll - C:\Windows\system32\ntdll.dll
如何让 Boto 使用 py2exe?