Я построил довольно простое приложение в Python 3.1 с помощью PyQt4. Выполняя это, я хочу, чтобы приложение распространялось на компьютеры без установленных.
Я почти исключительно забочусь о платформах Windows, поэтому моя цель состоит в том, чтобы в конечном итоге иметь один исполняемый файл и, возможно, некоторые файлы ресурсов и .dll.
Просматривая, я пришел к выводу, что
- py2exe поддерживает только Python до версии 2.7
- pyinstaller поддерживает только Python до версии 2.6
- cx_Freeze не работает для меня, потому что я продолжаю получать следующую ошибку при попытке выполнить двоичный файл с успешной сборкой:
Y:\Users\lulz\build\exe.win32-3.1>system_shutdown.exe
Traceback (most recent call last):
File "Y:\Program Files (x86)\Python\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 27, in exec(code, m.__dict__)
File "Y:/Users/lulz/Documents/Coding/Python3/projects/System Shutdown/system_shutdown.pyw", line 5, in from PyQt4 import QtCore
File "ExtensionLoader_PyQt4_QtCore.py", line 16, in AttributeError: 'NoneType' object has no attribute 'modules'
Итак, моя проблема в основном состоит в двух проблемах:
- Есть ли другой способ, но cx_Freeze для создания двоичных файлов с моей конфигурацией?
- Если нет, что может быть проблемой cx_Freeze?
Я могу предоставить дополнительную информацию о второй проблеме, если это необходимо, например мой вызов cx_Freeze, моя настройка distutils script и т.д.
Спасибо за вашу помощь и комментарии.