J'ai construit une application plutôt simple en Python 3.1 en utilisant PyQt4. En cours de réalisation, je souhaite que l'application soit distribuée aux ordinateurs sans que ceux-ci soient installés. Je m'intéresse presque exclusivement aux plates-formes Windows, donc mon but est d'avoir un seul fichier exécutable et peut-être quelques fichiers de ressources et .dlls à la fin.Création d'exécutables pour Python 3 et PyQt
Après avoir cherché autour, je suis venu à la conclusion que
- py2exe ne supporte que Python jusqu'à la version 2.7
- pyinstaller ne supporte que Python jusqu'à la version 2.6
- cx_Freeze fait ne fonctionne pas pour moi parce que je continue à obtenir l'erreur suivante en essayant d'exécuter mon binaire de construction avec succès:
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'
Donc mon problème est essentiellement deux problèmes:
- est-il une autre façon, mais cx_Freeze pour construire les binaires avec ma configuration?
- Sinon, quel pourrait être le problème de cx_Freeze?
Je peux fournir plus d'informations sur le deuxième problème le cas échéant, comme mon appel cx_Freeze, mon distutils script d'installation, etc.
Merci déjà pour votre aide et commentaires.
Bonne question. py2exe a été génial pour nos objectifs dans le passé. –
py2exe est maintenant disponible pour Python 3 dès maintenant! –