2

私が間違っているのは何ですか?私はコードブロック+allegro5+ubuntu11.10を使用しています

そしてこの2つのエラーを取得します

'al_init_image_addon'への未定義の参照`al_init_primitives_addon'への未定義の参照|

allegro5をすべての依存関係で正しくインストールしました。allegro.hのロードに関する最初のチュートリアルは正常に機能し、xtermウィンドウとは別に通常のウィンドウを作成します。allegrowikiの「showinfullscreentutorial」をフォローしています

#include "allegro5/allegro.h"
#include "allegro5/allegro_image.h"
#include <allegro5/allegro_primitives.h>
#include "allegro5/allegro_native_dialog.h"

int main()
{

    ALLEGRO_DISPLAY *display = NULL;
    ALLEGRO_DISPLAY_MODE disp_data;

    al_init();
    al_init_image_addon(); // <---------ERROR HERE
    al_init_primitives_addon();// < --------ERROR HERE TOO

    al_set_new_display_flags(ALLEGRO_FULLSCREEN);
    display = al_create_display(disp_data.width,disp_data.height);

    al_rest(3);
    al_destroy_display(display);

    return 0;
}
4

2 に答える 2

1

誰かがこの問題を抱えている場合、修正はallegro_image-5.0pkg-config パスに追加されます。

gcc game.c -o game $(pkg-config --cflags --libs allegro-5.0 allegro_image-5.0)
于 2012-10-01T19:50:35.703 に答える
0

さて、少しグーグル検索をしてアレグロのホームページに投稿したところ、正しい答えが得られました。

TOOLS > Compiler&DEbugger > LINKER のリンカ セクションに .so ファイルがありませんでした。

これらの行を追加する必要がありました

/usr/lib/liballegro_dialog.so
/usr/lib/liballegro_color.so
/usr/lib/liballegro_audio.so
/usr/lib/liballegro_image.so
/usr/lib/liballegro_physfs.so
/usr/lib/liballegro.so
/usr/lib/liballegro_font.so
/usr/lib/liballegro_acodec.so
/usr/lib/liballegro_main.so
/usr/lib/liballegro_memfile.so
/usr/lib/liballegro_primitives.so
/usr/lib/liballegro_ttf.so

and `pkg-config --libs allegro-5.0`

スクリーンショットについては、この投稿を参照してください。

http://hongouru.blogspot.com/2012/02/solved-allegro5-undefined-reference-to.html

于 2012-02-10T08:27:08.283 に答える