1

Ubuntu 12.04 コンピューターでfastHOGと呼ばれる方向付けられた勾配のヒストグラム用のライブラリをセットアップしようとしています。既製の fastHOG コードをコンパイルしようとすると、コンパイラが見つからないと文句を言います。Rahul Ashok の fastHOG に関するチュートリアルによると、 Fast Light Toolkit (FLTK) 2.0をインストールする必要があります。チュートリアルによると、FLTK 2.0 以外のバージョンは動作しません。fltk/run.h

それで、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 を適切にコンパイルするためのアドバイスはありますか?

Ubuntu 12.04 で g++ 4.6.3 を使用して FLTK 2.0 をビルドするときに表示される完全なエラー出力は次のとおりです。

...
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
4

3 に答える 3

1

少し遅れましたが、完全を期すために追加しました。FLTK2 はそのままではビルドできません。

1) 次のパッケージが必要です: それらを取得したら、configure を再実行します。未使用のシステムでこれを試していないので、もっとあるかもしれません。

  • libglu1-mesa-dev
  • libice-dev
  • libjpeg62-dev
  • libpng12-dev
  • libx11-dev
  • libxcursor-dev
  • libxext-dev
  • libxft-dev
  • libxinerama-dev
  • libxi-dev
  • mesa-common-dev
  • zlib1g-dev

2) configure によって生成された後に makeinclude を変更します (代わりに config.in を変更しますが、その方法はまだわかりません)。

LDLIBS add -lfontconfig -lXrender
GDLIBS add -lfontconfig -lXrender -lfreetype
于 2014-01-11T13:58:29.813 に答える
1

最後のエラーは、 の開発ファイルが不足していることを示しているようですxrender。を使用してそれらをインストールしてみてくださいapt-get(おそらくsudo apt-get install libxrender-dev、それらの問題が修正されるかどうかを確認してください。

同様に、最初のいくつかのエラーは、このライブラリの開発ファイルが不足していることを示しています。インストールしてみるlibfontconfig1-dev

于 2012-12-26T06:06:45.380 に答える
0

興味深いことに、fastHOG がコンパイル エラーを回避するのに「十分」な FLTK が正常にビルドされたようです。

于 2012-12-29T03:10:35.500 に答える