Невозможно связаться с GraphicsMagik

0

Я пытаюсь создать небольшую служебную программу, которая опирается на библиотеку GraphicsMagick C++, но при связывании с библиотекой я получил следующую ошибку:

make  all-recursive
make[1]: Entering directory '/home/ale/sample'
Making all in src
make[2]: Entering directory '/home/ale/sample/src'
g++  -g -O2   -o mysample mysample-a.o -L/usr/local/lib -lexiv2   -L/usr/local/lib -lGraphicsMagick++ -lGraphicsMagick    
/usr/local/lib/libGraphicsMagick.a(magick_libGraphicsMagick_la-png.o): In function 'png_put_data':
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1171: undefined reference to 'png_get_io_ptr'
/usr/local/lib/libGraphicsMagick.a(magick_libGraphicsMagick_la-png.o): In function 'PNGWarningHandler':
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1357: undefined reference to 'png_error'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1361: undefined reference to 'png_get_error_ptr'
/usr/local/lib/libGraphicsMagick.a(magick_libGraphicsMagick_la-png.o): In function 'PNGErrorHandler':
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1338: undefined reference to 'png_get_error_ptr'
/usr/local/lib/libGraphicsMagick.a(magick_libGraphicsMagick_la-png.o): In function 'png_get_data':
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1060: undefined reference to 'png_get_io_ptr'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1076: undefined reference to 'png_warning'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1077: undefined reference to 'png_error'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:1067: undefined reference to 'png_warning'
/usr/local/lib/libGraphicsMagick.a(magick_libGraphicsMagick_la-png.o): In function 'png_write_raw_profile':
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6243: undefined reference to 'png_malloc'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6253: undefined reference to 'png_malloc'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6254: undefined reference to 'png_malloc'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6281: undefined reference to 'png_set_text'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6282: undefined reference to 'png_free'
/home/ale/Downloads/GraphicsMagick-1.3.18/coders/png.c:6283: undefined reference to 'png_free'

Почему библиотека в /usr/local/lib ссылается на исходный код GraphicsMagick (который я создал и установил)?

Теги:
graphicsmagick

1 ответ

0

Ошибки говорят, что вам нужно также установить связь с libpng.

У вас очень описательные ошибки, связанные с исходным кодом, потому что вы создали графику с отладочными символами. В выпуске сборки (или если вы удалите отладочные символы из сборки отладки) вы увидите только неопределенные имена функций, без ссылок на исходные коды, где они используются.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню