web-dev-qa-db-fra.com

Problème avec / usr / bin / ld: main.o: référence non définie au symbole 'exp @@ GLIBC_2.2.5'

Lors de l'installation d'Emerald dans Ubuntu 13.04 lorsque j'écris "Sudo make", j'ai un problème:

 libtool: link: gcc -g -O2 -pthread -I/usr/include/libwnck-1.0 -I/usr/include/compiz -I/usr/include/gtk-2.0 -I/usr/lib /x86_64-linux-gnu/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango -1.0 -I/usr/include/gio-unix-2.0/-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/harfbuzz -I/usr/include/startup-notification-1.0 -o .libs/emerald main.o engine_loader. o ../libengine/.libs/libemeraldengine.so -lwnck-1 -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0/usr/lib/x86_64 -linux-gnu/libfreetype.so -lfontconfig -ldecoration -lXrender -lX11 -lpangocairo-1.0 -lpango-1.0 /usr/lib/x86_64-linux-gnu/libcairo.so -lgobject-2.0 -lglib-2.0 -pthread 
/usr/bin/ld: main.o: référence non définie au symbole "exp @@ GLIBC_2.2.5" 
/usr/bin/ld: remarque: "exp @@ GLIBC_2.2.5" est défini dans DSO/lib/x86_64-li nux-gnu/libm.so.6 essayez donc de l'ajouter à la ligne de commande de l'éditeur de liens 
/lib/x86_64-linux-gnu/libm.so.6: impossible de lire les symboles: Opération non valide 
 collect2: erreur: ld a renvoyé 1 état de sortie 
 make [1]: *** [émeraude] Błąd 1 
 make [1]: Opuszczenie katalogu `/home/stanek/emerald-0.9.5 /src'
make: *** [install-récursif] Błąd 1 
3
stanek

Ceci est un peu un kludge, mais cela fonctionne:

Editez le fichier configure.ac présent dans le dossier source émeraude. Là, approximativement à la ligne 55, vous trouverez la ligne suivante:

LIBS="$LIBS $EMERALD_LIBS"

Le changer en

LIBS="$LIBS $EMERALD_LIBS -lm -ldl"

et refaire les marches. Ça va marcher.

3
user202475