Форум сайта python.su
0
при сборке возникает вот такая вот ошибочка:
The following modules appear to be missing
setup.py
from distutils.core import setup
import py2exe
import sys
if len(sys.argv) == 1:
sys.argv.append("py2exe")
sys.argv.append("-q")
setup(options = {"py2exe": {
"bundle_files": 1,
"compressed": 1}},
zipfile = None,
console = ["key.py"]
)
from smtplib import SMTP
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email.Utils import COMMASPACE, formatdate
from email import Encoders
Офлайн
0
может стоит явно сказать py2exe какие модули подключать?
вот как у меня
from distutils.core import setup
import py2exe
options = {
"bundle_files": 1, # Used for one big exe
"compressed": 1,
"packages": ["encodings", "pywinauto", "pywinauto.controls", "pywinauto.tests"],
}
setup(
options = {"py2exe": options},
console=["hosts.py"], # For console applications
# windows=["name.pyw"], # For window applications
zipfile = None,
)
Офлайн
36
проблема обсуждалась здесь: http://python.com.ua/forum/viewtopic.php?id=1010
Офлайн
0
дело в том, что явно указывать модули я уже пробовал.
если указать только модуль `email` то ошибка все равно есть:
The following modules appear to be missing
['email.Charset', ‘email.Encoders’, ‘email.Errors’, ‘email.Generator’, ‘email.He
ader’, ‘email.Iterators’, ‘email.MIMEAudio’, ‘email.MIMEBase’, ‘email.MIMEImage’
, ‘email.MIMEMessage’, ‘email.MIMEMultipart’, ‘email.MIMEText’, ‘email.Message’,
‘email.Parser’, ‘email.Utils’, ‘email.base64MIME’, ‘email.quopriMIME’]
а если указывать каждый модуль отдельно, типа так вот:
'packages':
пишет ‘No module named email.MIMEMultipart’
Офлайн
0
Почему бы не заглянуть в архив с собранными скриптами и не убедиться в наличии недостающих модулей. Кстати можно задавать * в качестве маски, вот к примеру:
setup(options = {"py2exe":{"compressed": 0,
"optimize": 2,
"ascii": 1,
"bundle_files": 3,
"includes":["sip", "PyQt4._qt", "pyexpat", "socket", "select", "hashlib", "PyQt4.QtXml",
'subprocess','xml.etree.*', 'smtplib', 'email.*', 'email.mime.*', 'encodings.*'],
"excludes":["python25.dll"]}},
zipfile = "library.zip",
windows = [target],
console = [target_debug])Офлайн
0
а, кстати, где в собранном exe(если собирать как) “bundle_files”: 1, # Used for one big exe
исходный текст скрипта? или он там в байт-коде? тогда с каким именем
Офлайн
0
попробуй сначала собрать не в один ехе, а в архив, когда ошибки пропадут - соберёшь как раньше в ехе
Офлайн
0
у меня была похожая проблема, при сборке exe не включались модули з библиотеки xml.etree
The following modules appear to be missing
py2exe при сборке exe'шника искал etree не path_to_python\Lib\xml\ а в path_to_python\Lib\site-packages\pyxml-0.8.4-py2.6
Оключил в path_to_python\Lib\site-packages\easy-install.pth временно пакет pyxml-0.8.4-py2.6 и exe'шник собрался с нужными модулями xml.etree.
Включены ли нужные скопилированые файлы при “bundle_files”: 1 можно посмотреть в build\bdist.win32\winexe\collect-… вашего проекта.
Отредактировано (Окт. 1, 2010 13:36:32)
Офлайн