Я пытаюсь запустить очень простое графическое приложение на C++ с Eclipse (Neon): программа запускается, показывает красный дисплей и закрывается через 10 секунд.Eclipse GDT: неопределенная ссылка на компоненты библиотеки
Для этого я запускаю игровой движок Allegro 5.0.10, его исходный код устанавливает некоторые библиотеки внутри /usr/local/include/allegro5
. Моя программа выглядит следующим образом:
#include <stdio.h>
#include <allegro5/allegro.h>
#include <allegro5/allegro5.h>
int main(int argc, char **argv){
ALLEGRO_DISPLAY *display = NULL;
if(!al_init()) {
fprintf(stderr, "failed to initialize allegro!\n");
return -1;
}
display = al_create_display(640, 480);
if(!display) {
fprintf(stderr, "failed to create display!\n");
return -1;
}
al_clear_to_color(al_map_rgb(255,0,0));
al_flip_display();
al_rest(10.0);
al_destroy_display(display);
return 0;
}
Создание нового проекта с нуля со следующими параметрами ...
... и строить его с этими людьми ...
... при выборе «Build All», появляется сообщение об ошибке в консоли:
make all
Building file: ../main.cpp
Invoking: GCC C++ Compiler
g++ -O0 -g3 -Wall -c -fmessage-length=0 -fPIC -MMD -MP -MF"main.d" -MT"main.o" -o "main.o" "../main.cpp"
Finished building: ../main.cpp
Building target: pang
Invoking: GCC C++ Linker
g++ `pkg-config --libs allegro-5 allegro_image-5` -o "pang" ./main.o
./main.o: In function `main':
/home/xvlaze/workspace/pang/Debug/../main.cpp:14: undefined reference to `al_install_system'
/home/xvlaze/workspace/pang/Debug/../main.cpp:19: undefined reference to `al_create_display'
/home/xvlaze/workspace/pang/Debug/../main.cpp:25: undefined reference to `al_map_rgb'
/home/xvlaze/workspace/pang/Debug/../main.cpp:25: undefined reference to `al_clear_to_color'
/home/xvlaze/workspace/pang/Debug/../main.cpp:27: undefined reference to `al_flip_display'
/home/xvlaze/workspace/pang/Debug/../main.cpp:29: undefined reference to `al_rest'
/home/xvlaze/workspace/pang/Debug/../main.cpp:31: undefined reference to `al_destroy_display'
collect2: error: ld returned 1 exit status
make: *** [pang] Error 1
EXTRA: Я уже воспроизведен this ответ, но он по-прежнему не работает.
Можете ли вы поделиться с нами тем, что отображается на консоли сборки? Показывает, какая именно команда используется для запуска компилятора/etc и может указывать, где проблема. –
@ JonahGraham Конечно! Также обновляйте w/дальнейший info :) – xvlaze
Пожалуйста, подумайте над редактированием вопроса, чтобы задать только один вопрос. Первая часть вашего вопроса должна быть закрыта как «проблема, которая больше не может быть воспроизведена». Оставляя его там, он ставит вопрос о более низком качестве. –