Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1508 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  [pyhton] compliation

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[pyhton] compliation

n°993434
nebucade
Posté le 25-02-2005 à 13:28:10  profilanswer
 

bonjour,
 
quand je complile ma source avec py2exe, j'ai plien de lib qui ne servent a rien dans librairy.zip, comment faire pour qu'il ne mette que les lib qui servent. a par les supprimé apres la compilation
 
ex: library.zip = 2Mo et apres suppression des lib ne servant pas 360 Ko et je pense que je peut encore en supprimé.

mood
Publicité
Posté le 25-02-2005 à 13:28:10  profilanswer
 

n°993455
KrisCool
“Verbeux„
Posté le 25-02-2005 à 13:57:43  profilanswer
 

Qu'est-ce que tu entends par "ne servent à rien" ? Le programme s'exécute toujours correctement dans tous les cas même une fois que les libs sont supprimées ?
 
D'autre part, py2exe ne "compile" pas à proprement parler ton programme, il crée un exécutable capable d'exécuter le bytecode de ton programme et des libs requises, contenues dans un .zip.
 
Je présume que la recherche des dépendances est très sommaire, et qu'une instruction import module va importer tout le module et les modules qui en dépendent, même si tu ne te sers que de quelques fonctions dedans.


---------------
Loose Change Lies | Bars | Last.fm
n°993541
nebucade
Posté le 25-02-2005 à 15:08:24  profilanswer
 

oui meme apres la suppresion ca marche.
je sais que ca ne reste que de l'interperté.
 
je ne fais que des 'from'
mais quant je dit qu'il mes n'importe quoid c'est vrai. ex :
juste un import string il me met toute la lib Tkinter, c'est quoi le rapport.
 
 

n°993605
KrisCool
“Verbeux„
Posté le 25-02-2005 à 15:43:37  profilanswer
 

Ah oué quand même [:miguelito loveless]
Tu devrais peut-être signaler ça sur le wiki de py2exe.


---------------
Loose Change Lies | Bars | Last.fm
n°993671
nebucade
Posté le 25-02-2005 à 16:28:19  profilanswer
 

oueps bonne idée

n°993679
masklinn
í dag viðrar vel til loftárása
Posté le 25-02-2005 à 16:35:54  profilanswer
 

Bonbonbon...
 
1- C'est pas de la compilation bordel  :fou:  :fou:  :fou:  
 
py2exe ne fait "que" coller un mini interpréteur Python avec les libs dans un système exécutable, ça n'a strictement rien à voir avec une quelconque forme de compilation [:acadman]  
 
2- Il existe un certain nombre de packages que py2exe inclus automatiquement (dont TKinter), c'est connu et normal, si tu avais fait quelques recherches tu aurais vu qu'il existe un paramètre "exclude" qui permet de faire des fichiers du genre:

import sys
assert sys.version >= '2', "Install Python 2.0 or greater"
from distutils.core import setup
import py2exe
import os
 
setup(
    version = "0.0.5",
    description = "File Browser",
    name = "Browser",
 
    windows = [ {'script': "Browser.py",
                'icon_resources': [ (1, 'Icon.ico')],
                'excludes': ["pywin", "pywin.debugger", "pywin.debugger.dbgcon", "pywin.dialogs", "pywin.dialogs.list","Tkconstants","Tkinter","tcl"] ,}],
 
    options = {"py2exe": {"compressed": 1,"optimize": 2}},
     
    data_files = [('.',['Browser.nsi','Browser_silent.nsi']),('Resources',['Resources\\'+f for f in os.listdir(os.path.join(os.path.split(sys.argv[0])[0],'Resources'))])]    
    )


Message édité par masklinn le 25-02-2005 à 16:36:23

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°995447
nebucade
Posté le 28-02-2005 à 09:22:36  profilanswer
 

t'enerve pas je sais que c'est pas du compilé lol
 
merci pour l'excludes.

n°997221
nebucade
Posté le 01-03-2005 à 15:17:56  profilanswer
 

a oui encore une pitite aide :  
ca existe un compilateur python et si oui lequel
merci

n°997228
Taz
bisounours-codeur
Posté le 01-03-2005 à 15:25:34  profilanswer
 

nebucade a écrit :

bonjour,
 
quand je complile ma source avec py2exe, j'ai plien de lib qui ne servent a rien dans librairy.zip, comment faire pour qu'il ne mette que les lib qui servent. a par les supprimé apres la compilation
 
ex: library.zip = 2Mo et apres suppression des lib ne servant pas 360 Ko et je pense que je peut encore en supprimé.


moi je dirais que t'as un truc qui sert vraiment à rien et qui te permet de gagner de la place : py2exe

n°997824
nebucade
Posté le 02-03-2005 à 09:14:11  profilanswer
 

oui mais je suis obligé de faire un .exe, pour mes programmes.
Et pour le moment c'est le seul machin truc bidule que j'ai trouvé qui le fait.

mood
Publicité
Posté le 02-03-2005 à 09:14:11  profilanswer
 

n°997828
Taz
bisounours-codeur
Posté le 02-03-2005 à 09:26:28  profilanswer
 

non t'es pas obligé

n°997853
KrisCool
“Verbeux„
Posté le 02-03-2005 à 09:44:04  profilanswer
 

On n'est jamais obligé, mais quand on doit donner un programme "clé en main" aux utilisateurs parce qu'on sait qu'ils n'iront pas installer Python eux-mêmes et qu'on peut pas le leur imposer (ca peut paraître bizarre comme contraintes, mais c'est hors entreprise et c'est un peu particulier).
 
Donc j'en suis à fournir des packages créés avec py2exe.
Si tu as une meilleure solution Taz, je suis tout ouïe, parce que je ne l'ai pas trouvée.


---------------
Loose Change Lies | Bars | Last.fm
n°997857
Taz
bisounours-codeur
Posté le 02-03-2005 à 09:46:53  profilanswer
 

il font comment pour java ? il font comment pour .Net ? C'est quoi la contrainte d'installer un programme en plus ? Pourquoi y a des installeurs de programme java qui te font installe j2se si tu l'as pas ?

n°998023
masklinn
í dag viðrar vel til loftárása
Posté le 02-03-2005 à 11:19:23  profilanswer
 

Taz a écrit :

il font comment pour java ? il font comment pour .Net ? C'est quoi la contrainte d'installer un programme en plus ?


 [:benou_+1]  
 
Et rien n'empêche de fournir l'installeur python avec si t'as assez de place à perdre pour utiliser py2exe


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°998261
nebucade
Posté le 02-03-2005 à 14:08:05  profilanswer
 

Et bien c'est pour ca que j'utilise pas java, pour evité un interface (interpreteur).
Et je ne peut pas faire installé python sur toute les machines, car la c'est tres politique.
Mais je suis d'accord avec le principe.
 
Si non a ce que j'ai compris y'a pas de vrai compilateur python.

n°998262
masklinn
í dag viðrar vel til loftárása
Posté le 02-03-2005 à 14:08:54  profilanswer
 

nebucade a écrit :

Et bien c'est pour ca que j'utilise pas java, pour evité un interface (interpreteur).
Et je ne peut pas faire installé python sur toute les machines, car la c'est tres politique.
Mais je suis d'accord avec le principe.
 
Si non a ce que j'ai compris y'a pas de vrai compilateur python.


Il n'y a pas de compilateur du tout


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°998263
nebucade
Posté le 02-03-2005 à 14:10:05  profilanswer
 

snif oki merci
 
il me reste plus cas le faire je vous le ferai parvenir une fois fini dans 20 ans lol.

n°998276
KrisCool
“Verbeux„
Posté le 02-03-2005 à 14:14:49  profilanswer
 

Taz a écrit :

il font comment pour java ? il font comment pour .Net ? C'est quoi la contrainte d'installer un programme en plus ? Pourquoi y a des installeurs de programme java qui te font installe j2se si tu l'as pas ?


 
 
Parce que dans l'absolu, mes contraintes sont les suivantes:
- le programme doit être exécutable sans installation, ni configuration
- je ne peux pas imposer à mes utilisateurs d'installer Python.
- le programme distribué doit être le plus réduit possible en taille (ceci incluant les runtimes)
 
C'est tout, c'est comme ça, et ça ne souffre aucune discussion, même si ça paraît complètement con à des puristes. Tu te doutes bien que si j'avais la possibilité de déployer Python chez les utilisateurs de façon transparente, je m'en priverais pas. [:groody]
 
J'ai quoi comme alternative, si je m'affranchis des contraintes ? Faire un installeur qui installe Python + wxPython (que j'utilise) silencieusement avec l'installation du soft ?  
Pour mon problème de taille de programme à distribuer je suis un peu baisé là, 10Mo rien que pour une install de Python.


Message édité par KrisCool le 02-03-2005 à 14:19:01

---------------
Loose Change Lies | Bars | Last.fm
n°998285
nebucade
Posté le 02-03-2005 à 14:17:24  profilanswer
 

moi de meme!!

n°998300
masklinn
í dag viðrar vel til loftárása
Posté le 02-03-2005 à 14:24:02  profilanswer
 

KrisCool a écrit :


Pour mon problème de taille de programme à distribuer je suis un peu baisé là, 10Mo rien que pour une install de Python.


Si c'est pour un réseau (interne), dans la mesure ou Python est disponible en .msi (pour wxPy je sais pas par contre) tu peux le déployer en automatique silent en refaisant un peu le dit msi (il y a toutes les docs nécessaires dans la MSDN)


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°998340
KrisCool
“Verbeux„
Posté le 02-03-2005 à 15:01:25  profilanswer
 

masklinn a écrit :

Si c'est pour un réseau (interne), dans la mesure ou Python est disponible en .msi (pour wxPy je sais pas par contre) tu peux le déployer en automatique silent en refaisant un peu le dit msi (il y a toutes les docs nécessaires dans la MSDN)


 
Non, c'est malheureusement diffusé par Internet.
En gros, et pour ne pas noyer le poisson, c'est un programme utilisé au sein d'une guilde de MMORPG, pour remonter des informations depuis le jeu. Il parse un fichier texte, en extrait les informations pertinentes et les envoie à un serveur Web via une requête POST, le tout avec une interface graphique simple.
 
Cette application, j'aimerais qu'elle soit utilisée par le plus possible de gens, mais je peux pas l'imposer. Si je dois faire installer Python, c'est pas mal de gens qui vont trouver ça chiant et qui vont pas le faire. Si je fais une install "tout compris", c'est la taille du download qui en prendra un coup.
 
Pour le moment, py2exe est le meilleur compromis que j'ai trouvé.


---------------
Loose Change Lies | Bars | Last.fm
n°998611
Taz
bisounours-codeur
Posté le 02-03-2005 à 19:19:06  profilanswer
 

nebucade a écrit :


Si non a ce que j'ai compris y'a pas de vrai compilateur python.


t'as du vachement te renseigner avant de commencer python. Vu ce genre de réflexion, t'aurais pas fait un programme genre love-calc que tu veux passer à tes copines ? Ah non merde, t'as des utilisateurs ... tu veux pas installer python+wx ? et ben tu recodes tout en C et la prochaine fois t'auras qu'à réfléchir un peu avant de choisir une technologie.
 
edit: ah non, j'avais raison mmorpg ... ben je crois que les gens qui jouent en ligne ont la possibilité d'installer 3 broutilles.


Message édité par Taz le 02-03-2005 à 19:20:17
n°999345
KrisCool
“Verbeux„
Posté le 03-03-2005 à 11:20:26  profilanswer
 

Mouais, maintenant tout ça pour faire püriste-stÿle je crois que je vais pas me faire chier des masses...


---------------
Loose Change Lies | Bars | Last.fm
n°999359
Taz
bisounours-codeur
Posté le 03-03-2005 à 11:29:51  profilanswer
 

y a pas de puriste-stailleu. tu prends un langage interprété, il te faut l'interpréteur .|

n°999364
nebucade
Posté le 03-03-2005 à 11:31:47  profilanswer
 

Taz a écrit :

y a pas de puriste-stailleu. tu prends un langage interprété, il te faut l'interpréteur .|


 
ca doit etre vrai.

n°999379
KrisCool
“Verbeux„
Posté le 03-03-2005 à 11:44:17  profilanswer
 

Taz a écrit :

y a pas de puriste-stailleu. tu prends un langage interprété, il te faut l'interpréteur .|


 
Bah py2exe c'est quoi ? C'est rien de plus qu'un exe qui embarque l'interpréteur python, les modules du programme, et c'est tout.  [:izz]  Après qu'on distribue l'interpréteur sous une forme particulière ou via le package standard, je ne vois pas ce qui est fondamentalement différent.
Là où Java et .Net (tu les citais plus haut) font la distinction entre environnement de développement et environnement d'exécution (JDK vs JRE pour Java), Python ne la fait pas, ou alors j'ai loupé un truc. Même si la distrib Python n'est pas non plus énorme, avoir un environnement d'exécution réduit est quand même parfois confortable. py2exe permet d'avoir ça, dans une certaine mesure.
 
Après, le choix du langage je l'ai fait par rapport au temps disponible pour développer l'appli. J'ai fait le point par rapport à mes connaissance sur le temps que je mettrais à la développer, et Python était le meilleur de ce point de vue là, parce que mon temps de développement était limité. Il m'aurait fallu un temps fou pour faire ça en C/C++, beaucoup de temps également pour du Java, et je n'ai jamais développé en VB.Net ou C#.
Alors bon...


Message édité par KrisCool le 03-03-2005 à 11:45:21

---------------
Loose Change Lies | Bars | Last.fm
n°999380
Taz
bisounours-codeur
Posté le 03-03-2005 à 11:45:59  profilanswer
 

je lis pas ... je vois juste quelqu'un qui pleure parce qu'il faut transporter/installer 10Mo d'interpréteur/bibliothèque. Je trouve ça stupide py2exe, vu le poids que ça fait, à partir de 2/3 logiciels, ça aurait mieux valut d'installer python une bonne fois pour toutes

n°999424
nebucade
Posté le 03-03-2005 à 12:20:08  profilanswer
 

si c'est de mois que tu parle, je pleure pas, je voulais juste savoir comment faire pour qu'il n'y est que les lib utile dans librairy.zip .

n°999468
KrisCool
“Verbeux„
Posté le 03-03-2005 à 13:02:36  profilanswer
 

Taz a écrit :

je lis pas ... je vois juste quelqu'un qui pleure parce qu'il faut transporter/installer 10Mo d'interpréteur/bibliothèque. Je trouve ça stupide py2exe, vu le poids que ça fait, à partir de 2/3 logiciels, ça aurait mieux valut d'installer python une bonne fois pour toutes


 
Heureusement que tu l'as pas lu, parce que c'est bien la seule excuse qu'on peut trouver à ton tissu de conneries.
J'ai pas parlé de 2/3 programmes, mais d'UN programme. Tu connais beaucoup de gens dans un univers "grand public" qui font tourner plusieurs programmes en python toi ?  [:kiki]  
T'es beau va...
 
PS: je lirai pas les réponses, tu peux te dispenser des les écrire.


Message édité par KrisCool le 03-03-2005 à 13:04:45

---------------
Loose Change Lies | Bars | Last.fm
n°999514
Taz
bisounours-codeur
Posté le 03-03-2005 à 13:40:13  profilanswer
 

nebucade a écrit :

si c'est de mois que tu parle, je pleure pas, je voulais juste savoir comment faire pour qu'il n'y est que les lib utile dans librairy.zip .

recode en C static

n°1009699
tholdan
Posté le 11-03-2005 à 13:51:25  profilanswer
 

Taz a écrit :

recode en C static


Franchement, en quoi tu peux décider ce qui est bon ou pas ? Si il a envie de prendre py2exe, libre à lui... Maintenant tu fais ce que tu veux toi aussi, mais viens pas essayer d'imposer aux autres ton mode de pensée.

n°1010187
BenO
Profil: Chercheur
Posté le 11-03-2005 à 20:31:47  profilanswer
 

farpaitement

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  [pyhton] compliation

 

Sujets relatifs
[VB6] Erreur de compliation 
Plus de sujets relatifs à : [pyhton] compliation


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR