I'm in trouble with this: I've installed Allegro5 on Ubuntu, and compiled my Helloworld project
#include <allegro5\allegro.h> #include <allegro5\allegro_native_dialog.h> int main(void) {
ALLEGRO_DISPLAY *display=NULL;
if(!al_init()) {
al_show_native_message_box(NULL, NULL, NULL, "failed to initialize allegro!", NULL, NULL);
return -1;
}
display=al_create_display(640,
480);
if(!display) {
al_show_native_message_box(NULL, NULL, NULL, "failed to initialize display!", NULL, NULL);
return -1;
}
al_destroy_display(display);
return 0;
}
with " g++ -Wall TestProgram.cc pkg-config --libs allegro-5.0 allegro_font-5.0 allegro_ttf-5.0 ". Running it on terminal, it gives me this error (or crash?) message:
nac@NAC:~$ ./a.out
nouveau: kernel rejected pushbuf: Bad file descriptor
nouveau: ch0: krec 0 pushes 1 bufs 1 relocs 0
nouveau: ch0: buf 00000000 00000002 00000004 00000004 00000000
nouveau: ch0: psh 00000000 00000004a8 00000004bc
nouveau: 0x00107b00
nouveau: 0x00000000
nouveau: 0x20217000
nouveau: 0x00000003
nouveau: 0x1000f010
After some tests I saw that it crashes on or after "al_destroy_display(display);", in fact, after that error I must ctrl+C to end the program.
How can I do??:'(
Try updating your graphics driver as this lists it in a bug:
https://bugs.freedesktop.org/show_bug.cgi?id=79823
Don't forget to use <code > tags.
Also, do any of the allegro examples fail?
[edit]
./a.out
Wait, are you specifying -o anywhere in gcc?
ala "gcc mygame.cc -o mygame"
Because you might be running an object file, and not an executable.
You need backticks around the pkg-config call, as it is a separate command that returns the necessary information to compile your program.
Because you might be running an object file, and not an executable.
GCC defaults to an elf executable filename of "a.out" if you don't specify a filename.