Forum Linux.slackware Compilation Gtk 3

Posté par .
-1
22
fév.
2012

Bonjour,

je souhaite compiler un gtk-3 sur ma SlackWare, sous /opt/gtk-3.

J'ai donc récupéré, compilé et installé glib, pango, atk et gdk-pixbuf dans les versions récentes qui vont bien. Ensuite gtk-3.2.3.

L'étape "configure" est OK. Cependant quand vient la compilation, je tombe sur des erreurs de link dans le répertoire gdk/tests, pour gdk-color. La commande générée par libtool n'est pas bonne, elle fait référence en premier aux bibliothèque système par défaut et non à celles présentes sous /opt/gtk-3.

/bin/sh ../../libtool  --tag=CC   --mode=link gcc -std=gnu99  -DGDK_PIXBUF_DISABLE_DEPRECATED -g -O2 -Wall   -o gdk-color gdk-color.o -L/opt/gtk-3/lib -lpangocairo-1.0 -lpango-1.0 -lgio-2.0 -lfontconfig -lXext -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lXfixes -lgdk_pixbuf-2.0 -lX11 -lcairo-gobject -lcairo -lgobject-2.0 -lglib-2.0 -lm ../../gdk/libgdk-3.la  
libtool: link: gcc -std=gnu99 -DGDK_PIXBUF_DISABLE_DEPRECATED -g -O2 -Wall -o .libs/gdk-color gdk-color.o  -L/opt/gtk-3/lib ../../gdk/.libs/libgdk-3.so /opt/gtk-3/lib/libpangocairo-1.0.so /opt/gtk-3/lib/libpangoft2-1.0.so /usr/lib/libstdc++.so /opt/gtk-3/lib/libpango-1.0.so /usr/lib/libXinerama.so /usr/lib/libXi.so /usr/lib/libXrandr.so /usr/lib/libXext.so /usr/lib/libXcursor.so /usr/lib/libXcomposite.so /usr/lib/libXdamage.so /usr/lib/libXfixes.so /opt/gtk-3/lib/libgdk_pixbuf-2.0.so /opt/gtk-3/lib/libgio-2.0.so /opt/gtk-3/lib/libgmodule-2.0.so -lresolv /usr/lib/libcairo-gobject.so /usr/lib/libgobject-2.0.so /usr/lib/libgthread-2.0.so /usr/lib/libglib-2.0.so /usr/lib/libcairo.so /usr/lib/libpixman-1.so /usr/lib/libfontconfig.so /usr/lib/libexpat.so /usr/lib/libfreetype.so -lbz2 /usr/lib/libpng14.so /usr/lib/libXrender.so /usr/lib/libX11.so /usr/lib/libxcb.so /usr/lib/libXau.so /usr/lib/libXdmcp.so -ldl -lz /opt/gtk-3/lib/libgobject-2.0.so /opt/gtk-3/lib/libgthread-2.0.so /opt/gtk-3/lib/libffi.so /opt/gtk-3/lib/libglib-2.0.so -lpthread -lrt -lm -pthread -Wl,-rpath -Wl,/opt/gtk-3/lib

Au niveau des variables d'environnements dès le configure, j'ai :

export PKG_CONFIG_PATH=/opt/gtk-3/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/opt/gtk-3/lib

Mais ça ne suffit pas. Si j'enlève dans la ligne GCC les quelques références aux bibliothèques de /usr/lib présentes dans /opt, ça compile. Sauf que le make essaie à chaque fois de compiler quand même.

J'ai cherché du côté de libtool pendant plusieurs heures, mais sans succès. Auriez-vous une solution, ou même une piste ?

Merci d'avance

  • # ca fait longtemps que j'ai pas compilé

    Posté par . Évalué à 2.

    mais quand je vois

    export PKG_CONFIG_PATH=/opt/gtk-3/lib/pkgconfig:$PKG_CONFIG_PATH
    export LD_LIBRARY_PATH=/opt/gtk-3/lib

    je penses que la compilation va se planter quand il va chercher des libs qui ne sont pas dans /opt/gtk-3/lib

    il faut surement faire comme tu fais avec pkg_config_path
    ajouter /opt/gtk-3/lib au ld_library_path existant
    ca donnerait

    export PKG_CONFIG_PATH=/opt/gtk-3/lib/pkgconfig:$PKG_CONFIG_PATH
    export LD_LIBRARY_PATH=/opt/gtk-3/lib:$LD_LIBRARY_PATH

  • # Résolu

    Posté par . Évalué à 0.

    Bonjour,

    J'ai finalement réussi en mettant une grosse verrue dans le libtool. Pour supprimer les 3 dépendances en trop du /usr/lib.

    Merci

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.