Я хочу установить этот плагин gimp-normalmap на мою систему Ubuntu 18.04, загрузив и распаковав файл gimp-normalmap-1.2.3.tar.bz2 и запустив make
в распакованной папке. Затем я получаю его сообщение об ошибке:
gcc -c -O3 -Wall `pkg-config --cflags gtk+-2.0 gtkglext-1.0 gimp-2.0` normalmap.c
Package gimp-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gimp-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gimp-2.0' found
normalmap.c:26:10: fatal error: gtk/gtk.h: No such file or directory
#include <gtk/gtk.h>
^~~~~~~~~~~
compilation terminated.
Makefile.linux:26: recipe for target 'normalmap.o' failed
make: *** [normalmap.o] Error 1
Инструкции по установке включают в себя:
The only required packages that must be installed to build the plugin
(besides Gtk+ and the GIMP) are:
1) gimp version 2.4 or later
2) pkg-config version 0.14 or later
3) gtkglext version 0.7.1 or later
4) GLEW version 1.3.3 or later
You will need to install the development packages for your distribution for
Gtk+, Glib, gtkglext, GLEW and GIMP.
Я все это установил и проверил, ища каждый пакет с помощью dpkg-query -l *package*
При вводе dpkg-query -l *gtk+*
ничего не появляется (что нормально, я думаю), и dpkg-query -l *gtk*
показывает длинный список, с которым я не знаю, что делать.
GIMP устанавливается через Центр программного обеспечения, а не через apt-get
, поскольку последний устанавливает устаревшую версию.
РЕДАКТИРОВАТЬ:
Я только что установил libgimp2.0-dev
, выполнив sudo apt-get install libgimp2.0-dev
, и теперь я получаю это новое сообщение об ошибке при выполнении make
:
gcc -c -O3 -Wall `pkg-config --cflags gtk+-2.0 gtkglext-1.0 gimp-2.0` normalmap.c
gcc -c -O3 -Wall `pkg-config --cflags gtk+-2.0 gtkglext-1.0 gimp-2.0` preview3d.c
gcc -c -O3 -Wall `pkg-config --cflags gtk+-2.0 gtkglext-1.0 gimp-2.0` scale.c
gcc normalmap.o preview3d.o scale.o `pkg-config --libs gtk+-2.0 gtkglext-1.0 gimp-2.0 gimpui-2.0` -L/usr/X11R6/lib -lGLEW -o normalmap
/usr/bin/ld: normalmap.o: undefined reference to symbol 'sqrtf@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile.linux:17: recipe for target 'normalmap' failed
make: *** [normalmap] Error 1
Решение:
libgimp2.0-dev
-lm
в конец LIBS
после -L/usr/X11R6/lib -lGLEW
Благодаря @steeldriver для того, чтобы предоставить решение.