J'ai récemment mis à jour la version actuelle d'Ubuntu, 13.04 et Python 2.7.4. Depuis lors, j'ai des problèmes pour importer le module gobject
et je ne sais pas quoi faire pour le réparer. J'aimerais utiliser dreampie, qui échoue actuellement au démarrage avec ImportError ci-dessous. Voici plus de détails:
kiri:/home/kiri% uname -a
Linux megfigyelokocsi-2 3.8.0-17-generic #27-Ubuntu SMP Sun Apr 7 19:39:35 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
kiri:/home/kiri% Sudo apt-get install python-gtk2 python-gobject python-gobject-2
Reading package lists... Done
Building dependency tree
Reading state information... Done
python-gobject-2 is already the newest version.
python-gobject is already the newest version.
python-gtk2 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
kiri:/home/kiri% python
Python 2.7.4 (default, Apr 9 2013, 19:58:39)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import gobject
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named gobject
J'ai aussi essayé d'installer Dreampie à partir de la source avant:
git clone git://github.com/noamraph/dreampie.git dreampie
cd dreampie
Sudo python setup.py install
L'installation a réussi mais cela n'a pas aidé. Comment faire en sorte que python reconnaisse le module gobject?
EDIT: Le module existe dans le chemin suivant, mais l'importation ne fonctionne toujours pas:
/usr/lib/python2.7/dist-packages/gobject/
EDIT2: J'ai déjà essayé de réparer mon installation supposée corrompue python (sans succès):
Sudo zsh
apt-get remove --purge python2.7-minimal
apt-get remove --purge python2.7
apt-get autoremove
apt-get install python2.7-minimal
apt-get install python2.7
a également essayé de mettre à jour ma distribution, mais cela dit que tout est à jour:
Sudo zsh
apt-get clean && apt-get update
apt-get dist-upgrade
apt-get upgrade
EDIT 3: sys.path:
kiri:/home/kiri% python -c "import sys; print sys.path"
['', '/usr/local/lib/python27.Zip', '/usr/local/lib/python2.7',
'/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk',
'/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/site-packages']
Après avoir inspecté sys.path, je me suis rendu compte que l'interpréteur avait été chargé depuis un mauvais emplacement (/usr/local/bin
au lieu de /usr/bin/
).
Sudo rm -rf /usr/local/bin/python*
Et maintenant ça marche! Auparavant, j'avais essayé de compiler et d'installer python à partir de l'archive source (avec succès) et il semble que ses fichiers binaires soient placés dans un emplacement peu favorable à Ubuntu. Le problème tenait au fait que /usr/local/bin
précède /usr/bin
dans la variable PATH
.
Je me trompe peut-être complètement, mais j'ai un pressentiment que vous devriez utiliser from gi.repository import GObject
Les anciennes liaisons statiques pour GObject se trouvent dans le package python-gobject-2
.
Le chemin suivant doit exister: /usr/lib/python2.7/dist-packages/gobject/