IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec Python Discussion :

Py2exe: probleme avec pango et gobject


Sujet :

GTK+ avec Python

  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Par défaut Py2exe: probleme avec pango et gobject
    Bonjour a tous,
    Voila je vous appelle au secour, vous etes mon dernier recour, j'ai devellopé une application a l'aide de pygtk qui utilise une interface graphique glade. J'ai decider de l'exporter pour toutes les machines, a l'aide de py2exe:

    voici mon script setup.py:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    from distutils.core import setup
    import py2exe
    import glob
    import pygtk
    pygtk.require("2.0")
    import gtk
    import gtk.glade
    import sys
    import os
    import cairo
    import pango
    import pangocairo
    import gobject
    from distutils.filelist import findall
    import os
     
    opts = {
        "py2exe": {
            "optimize": 2,
            "includes": "pango,atk,gobject,pangocairo,cairo,gobject",
            #"bundle_files": 1,
            #"compressed": 1,
            "dll_excludes": ["iconv.dll","intl.dll","libatk-1.0-0.dll",
            "libgdk_pixbuf-2.0-0.dll","libgdk-win32-2.0-0.dll",
            "libglib-2.0-0.dll","libgmodule-2.0-0.dll",
            "libgobject-2.0-0.dll","libgthread-2.0-0.dll",
            "libgtk-win32-2.0-0.dll","libpango-1.0-0.dll",
            "libpangowin32-1.0-0.dll"],
            }
        }
     
    setup(
       windows = [
           {"script": "programme.py",
           "icone_resources":[(1,"programme.ico")]
            }],
       options=opts,
       data_files=[(".",glob.glob("*.bmp")),(".",glob.glob("*.gif")),
                   (".",glob.glob("*.png")),(".",glob.glob("*.jpg")),
                   (".",glob.glob("*.ico")),
                   (".",glob.glob("*.ini")),
                   (".",glob.glob("programme.glade")),
                   ],
       #zipfile = None,
    )
    Lorsque que je crée l'exe, aucune erreur dans ma console, lorsque je lance le programme, aucune erreur, mais si je prends le contenue de dist et que je le met sur une autre machine, la j'ai une message d'erreur, le voici:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Traceback (most recent call last):
      File "apocalypse.py", line 6, in <module>
      File "pango.pyo", line 12, in <module>
      File "pango.pyo", line 10, in __load
    ImportError: could not import gobject
    J'en ai conclut que mon programme utilisais encore malgré l'exe, des composants présent dans ma machine ou est installé pygtk.

    Comment pourrions nous regler le probleme, je ne sais pas si cela est utilise mais ne sait-on jamais voici comment est configuré mon ordi ou je crée l'exe:
    *Pygtk installé dans programme files d'un ordi vista
    *Dans le dossier dist, j'ai copier le contenue du dossier GTK (bin,lib...)

    Voila si vous avez besoin d'autres informations, nésiter pas et je vous remercie a tous d'avance ...

  2. #2
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Par défaut
    Bonjour,

    Ton programme a besoin des dll, pourquoi demander à py2exe de les exclure ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Par défaut
    Bonjour,
    Si je els est enlevé, c'est parce qu'apres quelque recherches, j'ai vu que certaines personnes avaient eux le meme probleme et avais montré leur setyp.py, je m'en suis inspiré.

    J'ai donc demandé a py2exe de remettre tous les dll, mais apres un essais, sa ne marche toujours pas sur une autres machine ne possédant pas des composants pythons

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo