allegro5をセットアップしましたが、単純なプログラム(ウィンドウの表示、黒い背景での塗りつぶしなど)は正常に機能します。ただし、他のヘッダー(ネイティブダイアログなど)をインポートしようとすると、問題が発生します。たとえば、このコードをコンパイルするとき
#include <allegro5/allegro.h>
#include <allegro5/allegro_native_dialog.h>
int main(){
if(al_init()) {
al_show_native_message_box(al_get_current_display(),
"Window Title",
"Content Title",
"The error message here",
NULL, ALLEGRO_MESSAGEBOX_ERROR);
return 0;
}
return 0;
}
そのようです
g++ -L/usr/local/lib -L/usr/lib -o "Allegro" ./main.o -lallegro_main -lallegro
このエラーが発生します
Undefined symbols for architecture x86_64:
"_al_show_native_message_box", referenced from:
_al_mangled_main() in main.o
誰がこれを修正するか考えていますか?私はすべてのヘッダーファイルが存在することを確信しており、/ usr / local/libsに適切なライブラリがあるようです。
編集:私はまた、-lallegro_native_dialogフラグをg++に追加しようとしましたが無駄でした。代わりに、と言ってエラーが発生しlibrary not found for -lallegro_native_dialog
、他の場所で提案を見て、私がそれを試してみようと思いました。