в чем я в том числе ошибаюсь?неопределенная ссылка на ошибку al_init_image_addon, - PullRequest
2 голосов
/ 09 февраля 2012

что я в том числе не так? Я использую кодовые блоки + allegro5 + Ubuntu 11.10

и получаю это 2 ошибки

неопределенная ссылка на 'al_init_image_addon' неопределенная ссылка на `al_init_primitives_addon '|

Я правильно установил allegro5 со всеми зависимостями. Первый учебник по загрузке allegro.h работает нормально, он создает обычное окно отдельно от окна xterm. Я слежу за "показом в полноэкранном уроке" из allegro 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;
}

Ответы [ 2 ]

1 голос
/ 10 февраля 2012

хорошо, после небольшого поиска в Google и публикации на главной странице allegro, я получил правильный ответ,

Я пропустил .so файлы в разделе компоновщика в 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

0 голосов
/ 01 октября 2012

В случае, если у кого-то возникнет эта проблема, исправление добавляет allegro_image-5.0 к вашему пути в pkg-config, например ::

gcc game.c -o game $(pkg-config --cflags --libs allegro-5.0 allegro_image-5.0)
...