web-dev-qa-db-fra.com

"pkg-config --modversion glib-2.0" signale une ancienne version

J'ai Ubuntu 14.04 32 bits. J'essaie de compiler une application à partir du code source. Il me donne un message d'erreur lors de la liaison dans le processus make si ./autogen.sh et ./configure passé sans erreur. J'ai eu cette erreur undefined reference to g_variant_parse_error_quark J'ai lu que cette fonction g_variant_parse_error_quark ajouté à glib2 en 2.39. J'ai vérifié les packages installés et constaté que la version de libglib est 2.40.0 dans mon système. pourtant

 pkg-config --modversion glib-2.0

rapports 2.38.2

Il semble que j'ai au moins deux glib2 différents installés. J'ai peut-être installé manuellement glib2 à partir des sources dans le passé.

Comment puis-je résoudre ce problème et laisser mon système utiliser la dernière bibliothèque correcte?

1
kenn

Comme je l'ai deviné, cela provenait de plusieurs bibliothèques en conflit. Quand je cours

 echo $PKG_CONFIG_PATH 

il a renvoyé une ligne vide

Ensuite, j'ai cherché

  locate glib-2.0.pc

et j'ai

  /usr/lib/i386-linux-gnu/pkgconfig/glib-2.0.pc
  /usr/lib/i386-linux-gnu/pkgconfig/spice-client-glib-2.0.pc
  /usr/local/lib/pkgconfig/glib-2.0.pc

Je cours aussi

  pkg-config --debug --modversion glib-2.0

pour trouver les répertoires recherchés

J'ai regardé dans le glib-2.0.pc fichiers et vérifié les numéros de version.

J'ai localisé le bon glib-2.0.pc fichier

alors je cours

  export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/

ensuite ./autogen.sh et make

s'est bien passé

5
kenn