Форум сайта python.su
при сборке возникает вот такая вот ошибочка:
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
Офлайн
может стоит явно сказать 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,
)
Офлайн
проблема обсуждалась здесь: http://python.com.ua/forum/viewtopic.php?id=1010
Офлайн
дело в том, что явно указывать модули я уже пробовал.
если указать только модуль `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’
Офлайн
Почему бы не заглянуть в архив с собранными скриптами и не убедиться в наличии недостающих модулей. Кстати можно задавать * в качестве маски, вот к примеру:
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])
Офлайн
а, кстати, где в собранном exe(если собирать как) “bundle_files”: 1, # Used for one big exe
исходный текст скрипта? или он там в байт-коде? тогда с каким именем
Офлайн
попробуй сначала собрать не в один ехе, а в архив, когда ошибки пропадут - соберёшь как раньше в ехе
Офлайн
у меня была похожая проблема, при сборке 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)
Офлайн