2012-02-09 3 views
2

私は間違っていますか?私はコードブロックを使用しています + allegro5 + 11.10私は間違っていますか? al_init_image_addonエラーへの未定義の参照、

をUbuntuとなって、この2エラー

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

未定義の参照|

すべての依存関係でallegro5を正しくインストールしました。 allegro.hのロードに関する最初のチュートリアルは正常に動作し、xtermウィンドウから離れた通常のウィンドウを作成します。 私は、アレグロのホームページで少しGoogle検索や投稿をした後、私は正しい答えを持って、うまくアレグロのwikiから

#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; 
} 

答えて

1

を「フルスクリーンチュートリアルのショーを」次午前私は行方不明になりました。リンカーセクションのファイルはTOOLS> Compiler & DEbugger> LINKERにあります。私はこれらの行

/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

+1

あなたが好きそれを行う必要があります: 'のpkg-config設定--libsアレグロ-5.0 allegro_dialog-5.0'つまり、pkg-config行で使用しているすべてのAllegroライブラリを一覧表示します。いくつかを直接リンクすると、依存している依存関係を見逃す可能性があります。 – Matthew

0

誰もがこの問題を持っている場合は、この修正は、例えば、あなたのpkg-config設定のパスにallegro_image-5.0を追加します

gcc game.c -o game $(pkg-config --cflags --libs allegro-5.0 allegro_image-5.0) 
関連する問題