程序找不到libgcc_s_dw2-1.dll

时间:2011-02-13 14:14:11

标签: c++ mingw codeblocks static-linking

  

可能重复:
  The program can't start because libgcc_s_dw2-1.dll is missing

我正在使用Code :: Blocks和MinGW 4.4(我认为)编译器来创建一个C ++项目。如果我从它的目录运行它,而不是从Code :: Blocks中运行它,我会得到这个系统错误。

The program can't start because libgcc_s_dw2-1.dll is missing from your computer.  Try reinstalling the program to fix this problem.

this post中,hardmath说要将-static-libgcc添加到编译器标志,静态链接到dll。当我尝试这个时,错误仍然发生。我可以通过将MinGW bin目录添加到我的计算机的Path变量来实现它,但我计划通过互联网分发我的程序。

此问题仅在更新到最新的G ++编译器后出现。除了我之外,这个解决方案为其他所有人工作的原因是什么?

1 个答案:

答案 0 :(得分:48)

链接命令行参数-static-libgcc应该有效。您可以尝试的另一种变体是普通-static

如果您不想担心这一点,并且仍想重新分发二进制文件,只需从MinGW的bin目录中复制相关的dll并将其放在可执行文件旁边。这是常见的做法,并按宣传的方式运作。