我对此感到麻烦:
我已经在Ubuntu上安装了Allegro5,并编译了我的Helloworld项目
#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;
}
使用“g++ -Wall TestProgram.cc
pkg-config --libs allegro-5.0 allegro_font-5.0 allegro_ttf-5.0
”。在终端上运行它,它给我这个错误(或崩溃?)消息:
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
经过一些测试,我发现它在“al_destroy_display(display);”或之后崩溃,实际上,在该错误之后,我必须使用ctrl + C结束程序。
我能怎么做??
最佳答案
这个问题已有几个月的历史了,但是当您搜索此错误时,它成为第一击。在Allegro 5.0.10上运行LinuxMint 17.2时,我遇到了相同的错误,并通过更新显卡(GeForce GTX 460)驱动程序解决了该错误。希望这对将来的用户有所帮助。