Найти - Пользователи
Полная версия: py2exe проблема со сборкой
Начало » Python для экспертов » py2exe проблема со сборкой
1
hellslade
при сборке возникает вот такая вот ошибочка:

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"]
)
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
вот почему возникает вышеизложенная ошибка? может я собираю как нить не правильно?
hellt
может стоит явно сказать 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,
)
pyuser
проблема обсуждалась здесь: http://python.com.ua/forum/viewtopic.php?id=1010
hellslade
дело в том, что явно указывать модули я уже пробовал.
если указать только модуль `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’
poltergeist
Почему бы не заглянуть в архив с собранными скриптами и не убедиться в наличии недостающих модулей. Кстати можно задавать * в качестве маски, вот к примеру:
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])
hellt
а, кстати, где в собранном exe(если собирать как) “bundle_files”: 1, # Used for one big exe
исходный текст скрипта? или он там в байт-коде? тогда с каким именем
poltergeist
попробуй сначала собрать не в один ехе, а в архив, когда ошибки пропадут - соберёшь как раньше в ехе
liebvit
у меня была похожая проблема, при сборке 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-… вашего проекта.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB