未找到 libstdc -6.dll

新手上路,请多包涵

我一直在做一个项目(具体来说是一个游戏),我觉得我应该从不同的库重新开始。因此,在执行此操作时,我重新安装了 Code::Blocks 并设置了我的新库和包含。

但截至目前,我在启动 u[我的新项目以测试所有包含的工作是否正常时遇到问题。这个问题是: libstdc++-6.dll was not found. 起初我想知道我是否可以在网上找到这个文件,但它无处可寻(或者至少我搜索过的很多地方……)不久之后,我尝试加载启动我的旧项目,同样的问题再次发生(奇怪…… ._.)我在想它可能是我的编译器,所以我使用了我的旧编译器,它做了同样的事情!此刻我把问题推迟到明天(今天)

所以我的问题是:如果其他人有这个问题,你会怎么解决?

我在 Windows Vista 32 位上使用 Code::Blocks 和 MinGW 作为编译器。

*****编辑*****

这是我项目中的构建选项。请注意,这些是项目中的设置,而不是全局编译器:

在(项目名称)->编译器设置->其他选项中:

(我使用 // 来分隔命令)

 -mthreads//
-fmessage-length=0//
-fexceptions//
-fident//

在(项目名称)->编译器设置->#define:

 WIN32//
_WINDOWS//

在(项目名称)->链接器设置->其他链接器选项中:

 -static-libstdc++//
-static-libgcc//
-Wl,--enable-auto-image-base//
-Wl,--add-stdcall-alias//
-Wl,--enable-auto-import//

在链接器->链接库中,我有各种指向带有 .a 扩展名的文件的链接,这些文件包括 Bullet PHysics、Ogre3D 和 SFML

在搜索目录中,我有指向 MinGW/bin 和 MinGW/lib 目录的链接,以及指向不同库的其他链接。

我的编译器是 MinGW,一个适用于 windows 32 位的 GNU GCC 编译器。 IDE是代码块。另请注意,在项目的调试和发布设置中,没有任何内容。

如果有帮助的话,这些设置中的大部分也是我从 Ogre3D 应用程序设置教程 中获得的。

原文由 Molmasepic 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2k
2 个回答

如果您在 Windows 上使用 MingW 编译 C++ 代码,您可能希望添加选项 -static-libgcc-static-libstdc++ 以静态链接 C 和 C++ 标准库,从而无需携带围绕这些的任何单独副本。库的版本管理在 Windows 中是一个难题,因此我发现这种方法是创建 Windows 二进制文件的最快和最干净的解决方案。

原文由 Kerrek SB 发布,翻译遵循 CC BY-SA 3.0 许可协议

我也有这个问题。我在命令提示符下编译并使用了标志-static。我之前的命令:“g++ test.cpp -o test.exe”,之后:“g++ test.cpp -o test.exe -static”

原文由 Hjalmar 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题