[résolu]problème avec les programme python libcairo

Bonjour,

Voilà après une mise à jour sur lenny je ne peux plus lancer un certain nombre de programmes :
en particulier CCSM et surtout quodlibet

l’erreur est la suivante :

jean-louis@debian:~$ quodlibet Traceback (most recent call last): File "/usr/bin/quodlibet", line 299, in <module> util.gtk_init() File "/usr/share/quodlibet/util/__init__.py", line 44, in gtk_init import gtk File "/var/lib/python-support/python2.5/gtk-2.0/gtk/__init__.py", line 48, in <module> from gtk import _gtk ImportError: /usr/lib/libcairo.so.2: undefined symbol: pixman_format_supported_destination jean-louis@debian:~$

je n’ai pas trouvé de libairo en unstable pour voir, et si je demander de forcer l’installation de la version stable, il veut enlever les trois quart de gnome !

Si quelqu’un sait comment s’en dépatouiller ce serait fort utile !

merci d’avance :smiley:

EDIT:

rebonjour!

Bon j’ai trouvé un lien avec quelque infos :
mail-archive.com/cffi-devel@ … 01294.html

Donc j’ai fait un :

objdump -T /usr/lib/libpixman-1.so.0

et j’obtiens effectivement :

... 0001c180 g DF .text 000001ed Base pixman_format_supported_destination ...

donc le symbole est bien présent dans /usr/lib/libpixman-1.so.0 mais /usr/lib/libcairo.so.2 ne va pas le chercher. Dans le lien que je viens de donner le type répond que sur son ordinateur :

[quote]libcairo.so is linked to /usr/lib/libpixman-1.so.0 which contains that
symbol.[/quote]

Ma question devient donc de quel type de lien s’agit-il et comment le faire s’il n’y est pas ??

merci d’avance… :slightly_smiling:

bonsoir,
que donne un ls -al /usr/lib | grep libcairo ?

si libcairo devrait être linkée avec /usr/lib/libpixman-1.so.0, ça donnerait ça pour se faire : [code]

cd /usr/lib

ln -s /usr/lib/libpixman-1.so.0 /usr/lib/libcairo.so[/code]

mais je doute fort que ce soit juste et la chose à faire, c’est pourquoi précisions svp ?

merci pour la réponse rapide !!!

donc en fait c’est toutes les applis python qui me chante la même chose (voir message #1) et qui ne marche pas (ce qui est fort embêtant :neutral_face: )

jean-louis@debian:~$ ls -al /usr/lib | grep libcairo lrwxrwxrwx 1 root root 23 mai 10 16:20 libcairomm-1.0.so.1 -> libcairomm-1.0.so.1.2.0 -rw-r--r-- 1 root root 102180 avr 20 21:24 libcairomm-1.0.so.1.2.0 lrwxrwxrwx 1 root root 25 mai 10 22:06 libcairo.so -> /usr/lib/libpixman-1.so.0 lrwxrwxrwx 1 root root 18 mai 10 20:10 libcairo.so.2 -> libcairo.so.2.17.5 -rw-r--r-- 1 root root 393364 avr 20 11:21 libcairo.so.2.17.5

Comme le dit le type sur le lien donné plus haut en fait le symbol cherché par python existe puisque il apparait dans libpixman mais le lien qui doit amener python de libcairo.so.2 à libpixman n’y est pas…
j’ai essayé :
ln -s /usr/lib/libpixman-1.so.0 /usr/lib/libcairo.so
mais c’est sans effet
quant à :
ln -s /usr/lib/libpixman-1.so.0 /usr/lib/libcairo.so.2
évidemment ça ne marche pas car il y a déjà un fichier avec ce nom.

En fait je crois pas qu’il s’agisse d’un lien symbolique, a mon avis il s’agit plutôt des fichiers de configuration qui devrait pointer vers ce fichier pour cette fonction et qui ne le font pas. D’où le “undefined symbol”. Comme je connais rien à python encore moins à ses fichiers de config et encore moins encore à leur syntaxe je sais pas faire…

merci quand même et si vous avez d’autres idées n’hésitez pas !

au moins tout ceci me fera approfondir un peu la connaissance de python…

edit : j’ai essayé d’installer la version unstable de libpixman dans l’espoir q’il me referait peut-être le lien mais non…

Peut-être me gourrais-je, mais il me semble bien que /usr/lib/libcairo.so.2 fait partie du paquet libcairo2, qui lui, est dans les dépôts:

libcairo2: Installé : 1.6.4-1+b1 Candidat : 1.6.4-1+b1 Table de version : *** 1.6.4-1+b1 0 998 http://ftp.fr.debian.org sid/main Packages 100 /var/lib/dpkg/status 1.4.14-1 0 990 http://ftp.fr.debian.org lenny/main Packages 1.4.10-1+lenny2 0 992 http://security.debian.org lenny/updates/main Packages 1.2.4-4.1+etch1 0 995 http://security.debian.org etch/updates/main Packages
À voir.

bonjour

Tout a fait il est dans les dépots et c’est la version que j’ai installé … et qui marche pas…

merci quand même :slightly_smiling:

n’ayant pas quodlibet, difficile de dire, (tes tentatives de liens n’étaient pas utiles à mon avis, ça peut-être un problème de liens, mais pas comme ça.) et ça dépend de nos conf et nos versions à chacun, exemple chez moi :

ls -al /usr/lib | grep libcairo lrwxrwxrwx 1 root root 23 2008-05-06 03:37 libcairomm-1.0.so.1 -> libcairomm-1.0.so.1.1.0 -rw-r--r-- 1 root root 98196 2007-12-23 22:58 libcairomm-1.0.so.1.1.0 lrwxrwxrwx 1 root root 18 2008-01-27 05:33 libcairo.so.2 -> libcairo.so.2.11.7 -rw-r--r-- 1 root root 480888 2008-01-15 03:40 libcairo.so.2.11.7
j’ai l’impression que le problème viendrait de quodlibet, il faut regarder les lignes 299 et 44 des fichiers concernés pour voir ce qu’il y est inscrit, et la source de l’erreur.
Avant tout, est-ce que ton installation de quodlibet est nickel ? à savoir :

Recommends: gstreamer0.10-alsa, gstreamer0.10-gnomevfs, python-feedparser, quodl ibet-ext (>= 1.0-2)ou

Recommends: quodlibet-ext (= 0.23.1-1), gstreamer0.10-alsa, gstreamer0.10-gnomev fs, python-feedparse ceci dépend de la version que tu utilises… ??

Ben en fait c’est pas spécifique à quodlibet (c’est un lecteur de musique), ccsm (l’interface python pour configurer compiz-fusion) fait pareil, de même que wicd (un équivalent de network-manager…)

tout marchais bien jusqu’à la mise à jour de aujourd’hui…

edit : après vérif l’install de quodlibet est propre

edit2 : ce matin mise à jour de libpixman et… toujours pareil !

Bon alors je viens d’avoir un petit problème en voulant restaurer ma partition sauvegardée et je me retrouve à tout devoir réinstaller (m’apprendra à être patient ça !) je vous tiendrais au courant, mais comme je débute sous debian (j’ai un an d’ubuntu dans les pattes) je crois que ceci va me faire un bon nétoyage de toute les saloperies que j’ai installé au petit bonheur la chance…

Bon et bien après réinstallation plus de problème !
j’ai du faire des mélange de dépots douteux…

merci pour votre aide !!