Linux (Ubuntu) の Eclipse で gtkmm を使用して、Raspberry Pi 用の C++ プログラムをクロスコンパイルしようとしています。最初にここにあるガイドを使用してクロスコンパイラをセットアップしましたが、これは完全に機能しました。
#include <gtkmm.h>
その後、プログラムに追加すると、Eclipse はライブラリーを見つけることができませんでした。これは、(project)Properties->C/C++ Build->Settings に移動し、次にpkg-config gtkmm-3.0 --cflags --libs
Cross G++ Compiler->Miscellaneous->Other flags に追加し、verbose(-v) を選択pkg-config gtkmm-3.0 --cflags --libs
して Cross G++ Linker->Miscellaneous-に追加することで修正されました。 >リンカーフラグ。(ここでは示されていませんが、両方のフラグの追加は、Eclipse では ' 記号ではなく ' 記号で囲まれています。)
現在、Eclipse は次のエラーを出しています: /usr/include/cairo/cairo-ft.h:46:22: fatal error: ft2build.h: No such file or directory
. ファイル ft2build.h は のコンピューターに存在します/usr/include
が、Eclipse ではそれを認識できず、解決策を探すことができませんでした。何かアドバイス?
ありがとう
更新: さらに多くの検索を行った後、gtkmm で使用される cairo ライブラリの freetype フォントを無効にしました。これは、でコメントアウトすることによって行われまし#define CAIRO_HAS_FT_FONT 1
たcairo-features.h
。次の問題は、Eclipse が gtkmm で使用されているライブラリを見つけられなかったことでした。そのため、\usr\libs
(プロジェクト)Properties->C/C++ General->Paths and Symbols->Library paths に追加しました。これをすべて行った後、ビルドしようとすると次のエラーが返されます: /usr/lib//libgtkmm-3.0.so: file not recognized: File format not recognized
. このファイル形式は標準のようですが、何が問題になっているのでしょうか?