2015-04-24 4 views
3

У меня есть скрипт Python, который я превратил в исполняемый файл с использованием cx-freeze-4.3.4.win32-py3.4. У меня есть Python 3.4, установленный на машине Windows 7 64-bit.Неустранимая ошибка Python при попытке запуска исполняемого скрипта Python

Вот мой простой setup.py файл:

from cx_Freeze import setup, Executable 

setup(name = "myfilename" , 
     version = "0.1" , 
     description = "This is my file" , 
     executables = [Executable("myfilename.py")] ,) 

Я побежал python setup.py build из командной строки в C:\Python34 папку с обоими сценария я пытался преобразовать и setup.py файл. Это создало еще одну папку под названием build, внутри которой была другая папка с именем exe.win32-3.4. В этой папке я нашел свой исполняемый файл, кучу файлов .pyd, один файл .dll и архив под названием library из группы .pyc файлов.

Если я запустил исполняемый файл из exe.win32-3.4 с архивом zip-архива, он выполняет отлично. Тем не менее, без библиотеки архива .pyc файлов (в основном, если я пытаюсь просто запустить exe-файл сам по себе, что это то, что я должен быть в состоянии сделать) исполняемый файл выкидывает эту ошибку:

Fatal Python error: cannot get zipimpirter instance 

Current thread 0x000001b48 (most recet call first): 

Я сделал предварительный поиск в Интернете для возможных решений проблемы, но не смог найти ничего существенного. Если кто-то знает, как устранить эту проблему, которая будет высоко оценена.

+0

EXE нуждается в других файлах в вашей папке сборки. cx_Freeze не поддерживает создание одного файла exe. Если вам нужно это сделать, см. [Этот раздел FAQ] (http://cx-freeze.readthedocs.org/en/latest/faq.html#single-file-executables). –

+0

Спасибо Томасу, эта ссылка была именно тем, что я искал! ... Позор я начал делать все в python 3.4, так как вы не можете использовать py2exe с этой версией ... NI знаю, что я запустил один исполняемый файл python, который я предполагаю был создан с использованием py2exe, а не cx-freeze ... – BK435

ответ

1

the docs От:

Single-file executables

cx_Freeze does not support building a single file exe, where all of the libraries for your application are embedded in one executable file.

Для одного файла решения с использованием py2exe и другие, см this question.

В 3.5 также есть модуль new zipapp, хотя базовая функциональность существует некоторое время.

Смежные вопросы