Outils pour utilisateurs

Outils du site


cx_freeze

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
cx_freeze [2014/12/24 11:46]
tyrtamos
cx_freeze [2014/12/24 12:21] (Version actuelle)
tyrtamos
Ligne 143: Ligne 143:
 A titre d'​exemple:​ dans un répertoire,​ j'ai un développement comportant 2 programmes .py à lancer en exe: monprogramme1.py et monprogramme2.py. Il peut y avoir dans ce répertoire des modules personnels utilisés par ces 2 fichiers .py. A titre d'​exemple:​ dans un répertoire,​ j'ai un développement comportant 2 programmes .py à lancer en exe: monprogramme1.py et monprogramme2.py. Il peut y avoir dans ce répertoire des modules personnels utilisés par ces 2 fichiers .py.
  
-On place le setup.py dans ce répertoire,​ et on le configure.+On place le setup.py dans ce répertoire,​ et on le configure ​en fonction du programme.
  
 On prend alors la console (cmd pour Windows), on se loge dans le répertoire en question (avec "cd chemin"​),​ et on fait: On prend alors la console (cmd pour Windows), on se loge dans le répertoire en question (avec "cd chemin"​),​ et on fait:
Ligne 153: Ligne 153:
 Il vient alors des lignes qui indiquent le déroulement du traitement par cx_freeze. On lit soigneusement pour voir s'il y a des erreurs. En cas d'​erreur,​ il faut corriger le setup.py et/ou corriger directement les programmes. Il vient alors des lignes qui indiquent le déroulement du traitement par cx_freeze. On lit soigneusement pour voir s'il y a des erreurs. En cas d'​erreur,​ il faut corriger le setup.py et/ou corriger directement les programmes.
  
-Le résultat se trouve dans le sous-répertoire build/​exe.win32-3.4 (exemple pour Python 3.4 sous Windows), qui contient les 2 exécutables voulus monprogramme1.exe et monprogramme2.exe accompagnés de toutes les bibliothèques nécessaires,​ y compris bien entendu de l'​interpréteur Python. ​+Sous Windows, le résultat se trouve dans le sous-répertoire build/​exe.win32-3.4 (exemple pour Python 3.4), qui contient les 2 exécutables voulus ​"monprogramme1.exe" ​et "monprogramme2.exe" ​accompagnés de toutes les bibliothèques nécessaires,​ y compris bien entendu de l'​interpréteur Python. ​
  
 Le répertoire à diffuser est donc dans cet exemple: '​exe.win32-3.4'​. On peut le renommer en "​monprogramme"​ ou en n'​importe quoi d'​autre. On peut aussi le diffuser sous forme d'​archive zip. Le répertoire à diffuser est donc dans cet exemple: '​exe.win32-3.4'​. On peut le renommer en "​monprogramme"​ ou en n'​importe quoi d'​autre. On peut aussi le diffuser sous forme d'​archive zip.
  
-On peut, bien entendu traiter des cas plus complexes ​en utilisant toutes les nombreuses options possibles: voir [[http://cx-freeze.readthedocs.org/en/​latest/​index.html]]+Il est bien sûr possible d'​utiliser en plus un "​installeur"​ qui permettra à un utilisateur d'​installer ce programme comme n'​importe quel autre. Il y a des possibilités sous cx_freeze de faire cela, mais en ce qui me concerne, j'​utilise plutôt "inno Setup" sous Windows ([[http://www.jrsoftware.org/isinfo.php]]). Sous Linux, on peut créer des paquets (rpm, ...) mais je n'ai jamais essayé. ​
  
-J'​essaie de ne gérer qu'un seul setup.py pour Windows et Linux, quitte à mettre les particularités sous les test "if sys.platform==..."​ Mais l'​exécutable Windows doit être construit sous Windows, et l'​exécutable Linux sous Linux, à cause des bibliothèques à intégrer qui sont différentes.+On peut, bien entendu traiter des cas plus complexes en utilisant toutes les nombreuses options possibles: voir [[http://​cx-freeze.readthedocs.org/​en/​latest/​index.html]]. 
 + 
 +J'​essaie de ne gérer qu'un seul setup.py pour Windows et Linux, quitte à mettre les particularités sous les tests "if sys.platform==..."​ Mais l'​exécutable Windows doit être construit sous Windows, et l'​exécutable Linux sous Linux, à cause des bibliothèques à intégrer qui sont différentes.
  
 \\ \\
cx_freeze.txt · Dernière modification: 2014/12/24 12:21 par tyrtamos