加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

mingw – 程序入口点_gxx_personality_v0无法在动态链接库中找到

发布时间:2020-12-14 02:54:34 所属栏目:Windows 来源:网络整理
导读:昨天我决定下载,安装并尝试使用Allegro 5.我还下载了Code :: Blocks 12.11 w / MinGW编译器.我设置了所有内容并正确安装了所有内容(或者我认为)并尝试运行示例代码以查看它是否可行: #include stdio.h#include allegro5/allegro.hint main(int argc,char **
昨天我决定下载,安装并尝试使用Allegro 5.我还下载了Code :: Blocks 12.11 w / 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));

   al_flip_display();

   al_rest(10.0);

   al_destroy_display(display);

   return 0;
}

当我尝试编译并运行程序时,会出现一个错误消息框,指出“程序入口点_gxx_personality_v0无法位于动态链接库libstdc -6.dll中.”我在网上搜索了大约一个小时试图找到解决这个问题的方法,就像我对大多数事情一样,但我空手而归.我想知道是否有人对此问题的任何修复有任何想法,如果是这样,请尽快告诉我!提前致谢!

解决方法

__gxx_personality_v0用于C库的异常处理. MinGW可以在x86上支持几个不同的异常模型:sjlj(setjmp / longjmp)或DWARF(DW2).据我所知,将使用哪个模型编译到编译器中 – 它不是可以使用命令行选项选择的东西.

sjlj异常模型将链接到__gxx_personality_sj0,DW2异常模型链接到__gxx_personality_v0.看起来您的编译器正在为dw2异常模型构建,但在运行时它发现了一个使用sjlj模型构建的libstdc -6.dll.查看youR系统上是否有多个版本的libstdc -6.dll,并查看是否将另一个版本复制到与程序相同的目录中来修复问题.

你可以使用nm libstdc -6.dll | grep个性,看看DLL正在使用哪个异常’个性’.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读