gpt4 book ai didi

c++ - "libgcc_s_sjlj-1.dll"丢失

转载 作者:行者123 更新时间:2023-11-30 05:41:37 26 4
gpt4 key购买 nike

我正在尝试运行我的第一个 SFML 应用程序。我可以通过代码块环境运行它,但我不能通过资源管理器运行它 - 出现一个错误:“libgcc_s_sjlj-1.dll is missing”。我将这些行添加到我的链接器选项中:

-static
-static-libgcc
-static-libstdc++

但是,在尝试编译它之后,我在构建日志中看到一个错误:

mingw32-g++.exe: error: unrecognized command line option '-static-libstdc++'

我该如何解决?我的 GCC 版本是 4.7.1 TDM-1

最佳答案

GCC 4.7.1 是一个相当旧的版本,-static-libstdc++ 是一个相当新的选项。我相信它存在于主要的 GNU 4.7.x 发行版中,但是 there is some corroborating evidence那MinGW GCC 4.7.1 没有。

无论如何,您不需要静态链接默认库。您的 TDM-GCC 安装是 32 位变体。假设它驻留在C:\TDM-GCC-32,然后libgcc_s_sjlj-1.dll驻留在C:\TDM-GCC-32\bin .检查它有没有。否则,您的 TDM-GCC 安装已损坏,您需要修复或重新安装它。

否则,要在 Windows 命令提示符下或从资源管理器中成功运行您的程序,C:\TDM-GCC-32\bin 必须在您的 PATH 环境变量中。检查是否是:(控制面板-> 系统和安全 -> 系统 -> 高级系统设置 -> 环境变量 -> 路径).

如果它存在,那我就难住了。如果不是,请将 ;C:\TDM-GCC-32\bin 附加到 PATH 并确定。正常重建您的程序(没有 -static-* 选项)然后它将从资源管理器运行,或者从您打开的命令提示符运行(除非任何其他动态链接问题)。

从 Code::Blocks 运行程序时你不会遇到这个程序,因为它自动为 PATH 添加已配置二进制文件的路径名运行程序之前编译器。

考虑升级到 the latest TDM GCC distribution .

关于c++ - "libgcc_s_sjlj-1.dll"丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31091681/

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