Вчера я решил загрузить, установить и попытаться использовать Allegro 5. Я также скачал Code::Blocks 12.11 с компилятором MinGW. Я все настроил и установил все правильно (по крайней мере, я так думал) и попытался запустить пример кода, чтобы посмотреть, будет ли он работать:
#include <stdio.h>
#include <allegro5/allegro.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(0,0,0));
al_flip_display();
al_rest(10.0);
al_destroy_display(display);
return 0;
}
Когда я пытаюсь скомпилировать и запустить программу, появляется окно с сообщением об ошибке, в котором говорится: «Точка входа в процедуру _gxx_personality_v0 не может быть расположена в библиотеке динамической компоновки libstdc++-6.dll». Я искал в Интернете около часа, пытаясь найти решение этой проблемы, как и в большинстве случаев, но я пришел с пустыми руками. Мне интересно, есть ли у кого-нибудь какие-либо идеи по решению этой проблемы, если да, дайте мне знать как можно скорее! Заранее спасибо!
nm libstdc++-6.dll | grep personality
? 02.07.2013sjlj
и одна или несколько из этих DLL были собраны с ожиданием обработки исключенийdw2
. Возможно, вам придется собрать все библиотеки самостоятельно или собрать альтернативные библиотеки, соответствующие обработке исключений для вашего компилятора (или, возможно, переключить компиляторы MinGW на тот, который использует обработку исключений dw2). 02.07.2013nm libstdc++-6.dll
, он сказал, что такого файла нет, что это должно означать? я уже положил файл вwindows/system32
28.12.2018