Компиляция библиотек Allegro 5.0 в Ubuntu: «неопределенная ссылка на ...» - PullRequest
1 голос
/ 14 июля 2011

Я новичок в Allegro, Ubuntu и C ++ ... заранее извините ...

Я только что установил Allegro 4. Что-то из менеджера программного обеспечения Ubuntu. Затем я следовал указаниям этой страницы , чтобы установить Allegro 5. Я не думаю, что мои библиотеки связаны правильно, но я точно не знаю, как это изменить вручную.

Мой код:

#include <allegro.h> //the allegro 4 header?
#include <allegro/allegro5.h> //the allegro 5 header?

int main(){
    allegro_init();
}

END_OF_MAIN()

Моя строка компиляции:

g++ allegro_test.cpp -o output.out `pkg-config --libs allegro5.0`

Мой вывод:

allegro_test.cpp (.text+0x2a) undefined refrence to '_install_allegro_check_version'

Я предполагаю, что это похоже на этот вопрос , но я не могу понять, как связать библиотеку. Я хотел бы, чтобы это было известно автоматически.

Ответы [ 2 ]

2 голосов
/ 03 октября 2011

Я знаю, что уже слишком поздно, чтобы ответить на этот вопрос, но, возможно, кто-то где-то ищет ответ.

неверный заголовочный файл; это должно быть так: -

#include <allegro5/allegro.h>
1 голос
/ 14 июля 2011

Из вопроса, который вы связали:

gcc foo.c -o foo $(pkg-config --libs allegro-5.0)

Однако исходный код, который вы разместили, - Allegro 4. Allegro 5 не имеет обратной совместимости. Эквивалент A5:

#include <allegro/allegro5.h>

int main() {
   al_init();
   return 0;
}
...