web-dev-qa-db-fra.com

comment compiler .exe pour Python 3.5+, 3.6 si possible?

Existe-t-il maintenant un protocole simple pour créer un fichier .exe à partir de Python 3.5+, en utilisant les modules pyqtgraph, qt5, theano, pymc3, numpy, scipy, os et sys et en ouvrant une interface graphique simple stockée dans un fichier '.ui'? J'ai perdu des heures et j'ai finalement échoué à en créer un (pour w7-64 bits). Aidez-moi !

échec préliminaire avec py2exe: j’ai d’abord installé py2exe pour python 3, mais il s’avère que ce n’est pas encore compatible avec mon python 3.6; j’ai donc passé à python 3.5… pour obtenir un tas d’erreurs. Ensuite, je suis allé sur des forums et j'ai essayé les solutions proposées, mais j'ai échoué (je ne suis pas à l'aise avec Windows), l'alternative consistant à rétrograder en python 3.4… J'ai donc rétrogradé en python 3.4 pour obtenir une erreur concernant un 'msvcr100.dll' manquant. essayé d’installer les instructions suivantes sur les forums mais par défaut, je n’ai pas l’autorisation de modifier les répertoires système… Quand j’ai finalement eu cette autorisation, il s’avère que la commande 'regsvr32' échoue (n’est-ce pas pour 32 bits? mais il n’existe pas 'regsvr64'…). Les épisodes suivants sont décrits ci-dessous.


mise à jour du 23 août 2017 à 13h:

et après ?


mise à jour le 2 septembre à 14h:

J'ai finalement réussi à construire un fichier .exe avec pyinstaller après de nombreux épisodes.

Malheureusement, j’ai manqué le module ‘theeano’ (requis dans mon cas par le module ‘pymc3’) et j’ai dû modifier les fichiers .py et abandonner une partie de l’application. Quelqu'un pourrait-il m'aider à construire un fichier .exe pour Windows 7+ avec le module ‘theano’?

voir construit un fichier .exe pour Windows à partir d'un script python 3 important theano avec pyinstaller

3
Stéphane

Pyinstaller fonctionne avec Python 3.5 et fonctionne même pour les paquets tels que tensor-flow, scipy, etc. (Les paquets avec lesquels j'ai travaillé)

py -3.5 pip install pyinstaller

puis allez dans C:\Utilisateurs\utilisateur\AppData\Local\Programmes\Python\Python35\Scripts et exécutez la commande

pyinstaller <code .py file along with directory> --onefile

--onefile: sert à compresser la construction et à obtenir un seul fichier en sortie

3
Ravi Kumar

Je suggérerais pyinstaller voir http://www.pyinstaller.org/

Le pyinstaller supporte déjà 3.5

La version de développement prend en charge 3.6

4
milo

Il est préférable d’utiliser un fichier de spécification pour importer d’autres bibliothèques cachées. J'ai répertorié toutes les bibliothèques Sklearn et les ai ajoutées au fichier de spécifications en tant que hiddenimports , vous pouvez ajouter les bibliothèques que vous avez utilisées dans votre projet. 

0
Ahad aghapour