build gimp separate-plus: undefinierter Verweis auf das Symbol 'pow @@ GLIBC_2.2.5'

0

Wie kann ich das Makefile von separate + 0.5.8 bekommen, um das jeweilige Gimp-Plugin zu erstellen?

Problembeschreibung

Dem Üblichen folgen

make
sudo make install

schritte für separate + -0.5.8 mit lcms2 (unkommentiert die eintragszeile 3 im makefile von separate +) stoße ich auf den fehler

/ usr / bin / ld: separate-core.o: undefinierter Verweis auf das Symbol 'pow @@ GLIBC_2.2.5' //lib/x86_64-linux-gnu/libm.so.6: Fehler beim Hinzufügen von Symbolen: DSO fehlt in der Befehlszeile

Die vom Makefile verarbeiteten gcc-Befehle lauten (danach werden die Fehlermeldungen von oben angezeigt):

gcc -g -DUSE_LCMS2 `pkg-config gimp-2.0 --cflags` `pkg-config gimpui-2.0 --cflags` `pkg-config gtk+-2.0 --cflags` `pkg-config lcms2 --cflags` -DENABLE_COLOR_MANAGEMENT -DENABLE_NLS -DGETTEXT_PACKAGE="\"gimp20-separate\"" -DUSE_ICC_BUTTON -c lcms_wrapper.c
gcc -g  separate-core.o separate-gui.o separate-export.o util.o tiff.o psd.o jpeg.o iccbutton.o lcms_wrapper.o -o separate `pkg-config gimp-2.0 --libs` `pkg-config gimpui-2.0 --libs` `pkg-config gtk+-2.0 --libs` `pkg-config lcms2 --libs` -ltiff -ljpeg
/usr/bin/ld: separate-core.o: undefined reference to symbol 'pow@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line

Sonstiges

Fertig auf einem elementaryOS 0.5 (Ubuntu 16.04). Einige vor make gemachte Schritte:

sudo apt-add-repository ppa:otto-kesselgulasch/gimp
sudo apt update
sudo apt install gimp gimp-dds gimp-gap gimp-lensfun gimp-gmic gimp-plugin-registry gimp-data-extras gimp-dcraw icc-profiles icc-profiles-free pandora 
wget http://sourceforge.jp/projects/separate-plus/downloads/47873/separate+-0.5.8.zip
sudo apt install libgimp2.0-dev libtiff5-dev
sudo apt install liblcms2-2 liblcms2-dev liblcms2-utils 
Stefan Bollmann
quelle

Antworten:

1

Ich bin gerade auf dieses Problem gestoßen. Ich dachte, es wäre nicht in Ordnung Bibliotheken, aber es sieht so aus, als müsste ich nur die Mathematikbibliothek einschließen. Bearbeiten Sie das Makefile wie folgt:

  • Fügen Sie unter den Bibliothekslisten (pkgconfig stuff) eine Zeile für math lib wie folgt hinzu: M_LIB = -lm

  • Kommentieren Sie die alte Bibliotheksliste und fügen Sie eine neue hinzu wie: LIBS = $ (M_LIB) $ (GIMP_LIB) $ (GTK_LIB) $ (LCMS_LIB) $ (TIFF_LIB) $ (JPEG_LIB)

Der Linker sollte jetzt aufhören, sich zu beschweren. Stellen Sie sicher, dass Ihr PREFIX auf etwas Lokales eingestellt ist, wenn Sie es in Ihrem Home-Verzeichnis installieren, da po / Makefile andernfalls versucht, die Locale-Dateien unter / usr zu installieren.

Ich hoffe, das hilft.

dmw
quelle