Поэтому я пытаюсь упаковать скрипт на python в исполняемый файл, который может работать на компьютере с Windows без необходимости установки на python.Я запускаю WIn7, и мое приложение использует pywin32, и запускаемый файл представляет собой файл с именем console.py, который принимает пару аргументов командной строки и выполняет другой скрипт
Я создал файл setup.py, на котором я запустилpython setup.py build, со следующим файлом установки
from cx_Freeze import setup, Executable
setup(
name = "OneNote Email Notifications",
version = "0.1",
description = "An email notifier for OneNote",
executables = [Executable("console.py")]
)
, который возвратил следующую ошибку,
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 2
7, in <module>
exec(code, m.__dict__)
File "console.py", line 1, in <module>
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\notificati
ons.py", line 1, in <module>
import application
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\applicatio
n.py", line 1, in <module>
import ApplicationServer
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\Applicatio
nServer.py", line 5, in <module>
win32com.client.gencache.Rebuild()
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 649, in
Rebuild
_SaveDicts()
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 65, in
_SaveDicts
f = open(os.path.join(GetGeneratePath(), "dicts.dat"), "wb")
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 141, in
GetGeneratePath
f = open(fname,"w")
IOError: [Errno 2] No such file or directory: 'C:\\Users\\Varun\\Desktop\\My Dro
pbox\\OnePy\\OM\\Notifications v0.2\\build\\exe.win-amd64-3.2\\library.zip\\win3
2com\\gen_py\\__init__.py'
, поэтому я подумал, что, возможно, возникла проблема с чтением в zipfile и решилзапустить сборку без создания library.zip.Поэтому я изменил файл setup.py на
from cx_Freeze import setup, Executable
setup(
name = "OneNote Email Notifications",
version = "0.1",
description = "An email notifier for OneNote",
options = {"build_exe": {
"create_shared_zip": False,
"append_script_to_exe": True,
"include_in_shared_zip": False,
}
},
executables = [Executable("console.py")]
)
, и теперь я получаю следующее сообщение об ошибке:
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 2
7, in <module>
exec(code, m.__dict__)
File "console.py", line 1, in <module>
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\notificati
ons.py", line 1, in <module>
import application
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\applicatio
n.py", line 1, in <module>
import ApplicationServer
File "C:\Users\Varun\Desktop\My Dropbox\OnePy\OM\Notifications v0.2\Applicatio
nServer.py", line 5, in <module>
win32com.client.gencache.Rebuild()
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 649, in
Rebuild
_SaveDicts()
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 65, in
_SaveDicts
f = open(os.path.join(GetGeneratePath(), "dicts.dat"), "wb")
File "C:\Python32\lib\site-packages\win32com\client\gencache.py", line 141, in
GetGeneratePath
f = open(fname,"w")
IOError: [Errno 2] No such file or directory: 'C:\\Users\\Varun\\Desktop\\My Dro
pbox\\OnePy\\OM\\Notifications v0.2\\build\\exe.win-amd64-3.2\\console.exe\\win3
2com\\gen_py\\__init__.py'