gpt4 book ai didi

c++ - 链接到 SFML dll 的程序无法启动,返回 0xC000007B 或缺少 __gxx_personality_v0

转载 作者:行者123 更新时间:2023-11-28 06:12:48 25 4
gpt4 key购买 nike

我试图从 SFML 页面编译示例 http://www.sfml-dev.org/tutorials/2.3/start-cb.php (at the bottom)

我下载了 GCC 4.9.2 DW2 版本,设置了所需的一切(链接器、目录)并且编译没有错误。

当应用程序启动时,它说它需要 .dll 文件,所以我从 SFML/bin 目录中复制了它们。然后它说 过程入口点 __gxx_personality_v0 无法定位在动态链接库 libstdc++-6.dll 中(libstdc++-6 是从 MinGW/bin 复制的)

pro... _ZSt24__throw_out_of_range_fmtPKcz 在同一个 dll 中

在 SFML 页面上有一条注释:

There are multiple variants of GCC for Windows, which are incompatible with each other (different exception management, threading model, etc.). Make sure you select the package which corresponds to the version that you use. If you are unsure, check which of the libgcc_s_sjlj-1.dll or libgcc_s_dw2-1.dll files is present in your MinGW/bin folder. If MinGW was installed along with Code::Blocks, you probably have an SJLJ version. If you feel like your version of GCC can't work with the precompiled SFML libraries, don't hesitate to build SFML yourself, it's not complicated.

我尝试在 DevC++ 和 Code::Blocks 中将其编译为与 dw2 和 sjlj SFML 版本链接导致上面的错误。我的编译器安装文件夹中有两个 dll。我的 IDE 有问题吗?我厌倦了猜测新的 IDE/编译器<->SFML_version 组合

后来我尝试使用 cmake 自己构建 SFML - 当使用这些 dll 启动 .exe 时,我收到错误 0xC000007B。

我试图静态链接它,我在链接器中以正确的顺序添加了所需的库,但它多次返回 undefined reference to ...(在两个 IDE 中)。

我只是想让程序运行起来,前几天我用SDL库编译了另一个例子没有任何问题,它运行完美。

SFML 所有的尝试都是 32 位的,并且对于编译器来说是一样的

最佳答案

由于 C++ ABI 不兼容,SFML 库必须使用与构建应用程序时使用的完全相同的编译器构建。

如果你不使用 this MinGW compiler ,您必须自己重建 SFML。

关于c++ - 链接到 SFML dll 的程序无法启动,返回 0xC000007B 或缺少 __gxx_personality_v0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30922887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com