Компиляция Fast Light Toolkit (FLTK) 2.0 для использования с fastHOG

Я пытаюсь создать библиотеку для гистограммы ориентированных градиентов называется fastHOG на моем компьютере Ubuntu 12.04. Когда я пытаюсь скомпилировать готовый код fastHOG, компилятор жалуется, что не может найти fltk/run.h, В соответствии с Учебник Рахула Ашока о fastHOG, Мне нужно установить Fast Light Toolkit (FLTK) 2.0. В учебнике говорится, что версии FLTK, отличные от 2.0, не работают.

Итак, я пытаюсь скомпилировать FLTK 2.0 (svn co http://svn.easysw.com/public/fltk/fltk/trunk fltk-2.0). Когда я делаю make в fltk-2.0 папка, я получаю ошибки как undefined reference to 'FcInit',

Любой совет, как заставить FLTK 2.0 правильно скомпилировать?

Вот полная распечатка ошибок, которую я получаю при сборке FLTK 2.0 с g ++ 4.6.3 в Ubuntu 12.04:

...
Linking fluid2...
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcInit'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcPatternCreate'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcObjectSetBuild'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcFontList'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcPatternDestroy'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcPatternGetString'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::list_fonts(fltk::Font**&): error: undefined reference to 'FcFontSetDestroy'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::Font::sizes(int*&): error: undefined reference to 'FcPatternGetDouble'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::Font::sizes(int*&): error: undefined reference to 'FcFontSetDestroy'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::Font::encodings(char const**&): error: undefined reference to 'FcFontSetDestroy'
../lib/libfltk2.a(Font.o):Font.cxx:function fltk::Font::encodings(char const**&): error: undefined reference to 'FcPatternGetString'    ../lib/libfltk2.a(Image.o):Image.cxx:function figure_out_visual(): error: undefined reference to 'XRenderFindStandardFormat'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderCreatePicture'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderSetPictureFilter'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderSetPictureTransform'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderComposite'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderComposite'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderComposite'
../lib/libfltk2.a(Image.o):Image.cxx:function fl_xrender_draw_image(unsigned long, fltk::PixelType, fltk::Rectangle const&, fltk::Rectangle const&): error: undefined reference to 'XRenderFreePicture'
collect2: ld returned 1 exit status
make[1]: *** [fluid2] Error 1
make: *** [all] Error 2

1

Решение

Ваши последние ошибки, кажется, указывают на то, что вам не хватает файлов для разработки xrender, Попробуй установить их с помощью apt-get (возможно, sudo apt-get install libxrender-dev и посмотрим, исправит ли это эти проблемы.

Первые несколько ошибок также указывают на то, что вам не хватает файлов для разработки эта библиотека. Попробуй установить libfontconfig1-dev

1

Другие решения

Немного опоздал, но просто добавил для полноты. FLTK2 не собирается из коробки.

1) Требуются следующие пакеты: как только вы их получили, перезапустите configure. Там может быть больше, поскольку я не пробовал это в девственной системе.

  • libglu1-Меса-DEV
  • Libice-DEV
  • libjpeg62-DEV
  • libpng12-DEV
  • libx11-DEV
  • libxcursor-DEV
  • libxext-DEV
  • libxft-DEV
  • libxinerama-DEV
  • libxi-DEV
  • Меса-синфазного DEV
  • zlib1g-DEV

2) Измените makeinclude после того, как он был сгенерирован с помощью configure (альтернативно измените config.in, но я еще не выяснил, как это сделать).

LDLIBS add -lfontconfig -lXrender
GDLIBS add -lfontconfig -lXrender -lfreetype
1

Интересно — кажется, что «достаточно» FLTK, успешно скомпилированного для fastHOG, чтобы избежать ошибок компиляции.

0
По вопросам рекламы [email protected]