:(
bonsoir,
je fait un programme qui gere les entrees et les sortie et je dois faire un executable de ce dernier.
j uitlise python25,mysqldb,pygtk,vista et lors de la compilation en mode console apres avoir creer l executable il y a un message me disant qu il manque des modules gdk,ltihooks,gobject.timeout_add,pourtant mon programme fonctionne correctement je pense que c est un probleme de distribution.
si qq a deja eu se probleme oi connais la reponse a ce probleme svp aidez-moi!!!!!!!!!!
probleme module manquant pendant compilation
dim, 14/10/2007 - 21:29
#1
probleme module manquant pendant compilation
Pardonne moi, mais ce que tu nous dis là ne veux rien dire.
En plus un exécutable en Python c'est assez rare...
Compilation en mode console :shock: En Python :?: sans blague :?:
Mais enfin de quoi on parle là ?
Pour autant que je sache, le module gdk n'existe pas en Python. Le module gtk.gdk oui, mais si tu as gtk, gdk ne peut pas manquer.
Si ton programme fonctionnait correctement, comme tu dis, tu n'aurais pas de message d'erreur....
Je ne pense pas.
Je pense que c'est un problème entre la chaise et le clavier.
Mets un peu d'ordre dans tes idées et on essaiera de t'aider. Parce que pour le moment même si on voulait on ne pourrait pas, à l'impossible nul n'est tenu....
Le problème peut venir des import de module.
Python ne charge pas obligatoirement tous le contenu
d'un module après un import * ou un import module_name. C'est à l'appel d'une routine d'un module que Python va aller voir si la classe ( par ex ) existe dans le module et la charge. Tant que le source est disponible pas de probleme. Si tu fabrique un exe via py2exe ou pyInstall
alors il est tout a fait possible quún module ne soit pas chargé
pendant la generation de l'exe, et ça plante. J'ai ce probleme dans une
appli qui construit dynamiquement des noms de module à importer.
Je n'ai pas encore réussi a generer un exe qui marche vraiement.
Voir la doc de Python sur les mecanismes de import pour plus.
Une chose a essayer c'est de declarer explicitement tous les module ET
sous modules dans des clauses import module.sub.subsub ..... etc
Bon courage.
En effet..
Normalement pas.
Ah oui mais là c'est un cas très particulier. Et c'est normal car a l'impossible nul n'est tenu. Un outil tel que py2exe analyse les import en début de fichier justement, mais rien de plus.
Ce qui montre bien que "l'exe" généré n'en est pas un en fait. c'est plutôt une distribution partielle de Python avec les modules requis à l'exécution d'un script. L'intérêt est de pouvoir avoir lancer un script Python sur une machine sans installer Python dessus. Mais le tout se comporte comme un interpréteur Python, pas comme un "exécutable". Donc dans ton cas quand le script arrive à la génération dynamique de l'import, l'interpréteur cherche à faire l'import à ce moment seulement et c'est normal que ça ne puisse pas être trouvé.
Maintenant je ne suis pas sûr que tout ce que nous disons là concerne vraiment l'incompréhensible post original.
1.Installer "python-2.5.1.msi" si vous ne l'avez pas encore fait
et "py2exe-0.6.6.win32-py2.5.exe" dans l'ordre.
2.Mettre "Py2Exe.exe"
dans le répertoire d'installation de Python25
"C:\Python25"
3.générer un fichier "setup.py" avec "SetupPyGenerate.exe"
il vous demanderas un nom de fichier *.py donc
indiquer le nom du fichier que vous voulez compiler
dans le fichier "setup.py":
4.Mettre "Py2Exe.exe", "setup.py" & votre Script a Compiler
dans le répertoire d'installation de Python25
"C:\Python25"
5.Executer "Py2Exe.exe" une fois le processus terminer
une fenetre s'ouvre a l'endroit ou votre Executable
à été créer
Ps:Je vous est mis toute mes sources Delphi, Dev-Cpp, Batch.
download src+bin
je vous dis @++
by Craft