Pb pendant l'installation de GTK+ sous Linux

Résolu
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour
J'essaie d'installer GTK+ à partir des sources sur ma distribution de Linux. La version qui est fournie avec le système commence à dater et est parfaitement inadaptée à l'exécution de certains programmes (monodevelop, etc...). J'ai réussi sans difficulté à compiler et à installer dans l'ordre GLib, Cairo, Pango et ATK. J'ai également défini la variable d'environnement PKG_CONFIG_PATH (valeur=/usr/local/lib/pkgconfig); puis j'ai édité le fichier /etc/ld.so.conf (en y ajoutant /usr/local/lib). Le problème est que quand je lance le script de configuration de gtk+, j'obtiens un message indiquant que Pango n'a pas été trouvé. En parcourant ce script, j'ai trouvé que l'erreur survenait après l'exécution de la commande pkg-config --cflags --libs pango pangocairo. En fait, c'est pangocairo qui est manquant. Je ne sais comment resoudre ce problème. Quelqu'un peut-il m'aider à comprendre ce qui ne va pas et comment le resoudre? Merci d'avance.
A voir également:

10 réponses

bob031 Messages postés 8158 Date d'inscription   Statut Membre Dernière intervention   473
 
Bonjour,

j'ai trouvé que l'erreur survenait après l'exécution de la commande pkg-config --cflags --libs pango pangocairo.

c'est peut-être une lib qu'il manque ( peut-être libpangocairo ?)

2 possibilités : soit le système ne trouve pas la lib, soit elle n'est pas installée !

si ça peut t'aider ...

:-))
0
Marc
 
Hello

Je te conseille de rechercher dans ton répertoire /usr/local/lib/pkgconfig les fichiers *pango*.pc ou *cairo*.pc, afin de voir lesquels sont présents

Mais il y a peut-être un conflit entre ton /usr et /usr/local, es-tu certain d'avoir installé tout ca dans /usr/local ?
... tu peux aussi regarder dans /usr/lib/pkgconfig si tu n'a pas le *cairo*.pc

si cairo est bien installé dans /usr au lieu de /usr/local, il te suffira de le réinstaller avec l'option --prefix=/usr/local qui va bien
(ou d'ajouter le path correct a ton PKG_CONFIG_PATH).

En espèrant t'avoir aidé, bonne journée
Marc
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai bien vérifié que les binaires générés par la compilation de cairo et pango se trouvaient dans /usr/local/bin et /usr/local/lib. De plus, de nombreux fichiers pango*.pc sont présents dans /usr/local/lib/pkgconfig en même temps que cairo.pc. Seul pangocairo.pc manque à l'appel (alors qu'il figure dans le répertoire des sources de pango après compil'). Je me demande pourquoi l'exécution de make install ne le copie pas au bon endroit. Je remarque aussi que le script de configuration de pango signale que la version de cairo est 1.2.0 alors que la version attendue est 1.2.2 mais il génère quand même le makefile. Est-ce la cause?
0
jeanbi Messages postés 15119 Date d'inscription   Statut Contributeur Dernière intervention   2 184
 
bonjour,
mets a jour ta version de mandriva et urpmi pour installer ce que tu as besoin .
a+
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
C'est la solution ultime en effet. Cependant j'aurais préféré concerver ma distribution.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

puis j'ai édité le fichier /etc/ld.so.conf (en y ajoutant /usr/local/lib).
as-tu exécuter
ldconfig
après l'édition du fichier ld.so.conf?
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Absolument!
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai finalement trouvé la solution à mon problème (non sans peine bien sûr).
En fait, il s'agissait d'un double problème:
1) Ma version de cairo n'était pas la bonne: pour compiler pango 1.14.7, il me fallait cairo 1.2.2. La compilation de pango avec une version antérieure de cairo (comme 1.2.0 dans mon cas) ne génère pas pangocairo lequel est requis pour compiler gtk+.
2) Plutôt que d'éditer /etc/ld.so.conf, j'aurais dû définir la variable d'environnement LD_LIBRARY_PATH. Je crois que l'édition de ld.so.conf marche aussi mais que l'ordre d'apparition des repertoires compte beaucoup. La négligence de cette précaution m'a vallu de recevoir le message "Can't link with Pango..." à cause d'une ancienne version de pango installée dans ma machine (certainement avec gnome. La désinstallation de cette version de pango à partir de rpmdrake entaîne la désinstallation complète de gnome, d'où ma mésaventure!!).
Bref, tout est bien qui fini bien. Un seul problème subsiste cependant: depuis que j'ai installé cette version de gtk+, gnome-themes ne fonctionne plus. Une idée?
0
bob031 Messages postés 8158 Date d'inscription   Statut Membre Dernière intervention   473
 
Bonjour,

Un seul problème subsiste cependant: depuis que j'ai installé cette version de gtk+, gnome-themes ne fonctionne plus. Une idée?

dépendance entre gtk+ et gnome-themes.

bon courage.

:-))
0
aya
 
bonjour j'ai un problème ds l'installation de gtk sous fidora 6 en fait elle existe mais lorsque j'essaye de compiler un pgmme ça marche pas je ponse que le problème est dans la variable d'environement SVP si c'est possible vous m'envoyez comment faire pour l'ajouter et dans que fichier (est ce ds le .bashrc) vous m'envoyez la réponse sur aya_info6@yahoo.fr.

Merci à l'avance.
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Essaie ceci:
- Positionne la variable PKG_CONFIG_PATH à $exec_prefix/lib/pkgconfig (ex: /usr/local/lib/pkgconfig).
- Ajoute le chemin des bibliothèques de gtk+ (ex: /usr/local/lib) dans le fichier /etc/ld.so.conf.
- Invoque ldconfig.
- Compile chacun de tes progs avec `pkg-config --cflags --libs gtk+-2.0`
0
mpiaya
 
Bonjour,

merci pour votre réponse, ce que je n'ai pas comprie est où mettre PKG_CONFIG_PATH à $exec_prefix/lib/pkgconfig est ce dans le fichier .bashrc sinon, où le mettre.

Merci
0
mickey2m Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
$exec_prefix désigne le répertoire racine de ton install (comme par exemple /usr/local). Pour éditer la variable, tape quelque chose comme ceci:
su
<mot de passe>
echo 'export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:répertoire_à_ajouter' >> /etc/profile
exit
source /etc/profile
0