![](/img/trans.png)
[英]libstdc++-6.dll not found when using minGW with VSCode to run simple C++ program
[英]how can i fix "libstdc++-6.dll not found" error in my c++ program?
最近我意识到我的 c++ 程序被检测为病毒,我认为这一定是编译器问题。 所以我卸载了我的编译器并通过msys2重新安装它。 output 在我的系统中没问题,但是当我在虚拟机或其他系统中运行由新编译器创建的 EXE 输出时,出现此错误:找不到 libstdc++-6.dll
我不知道如何解决这个问题。 我很感激任何帮助。
有些人称之为 DLL 地狱,但这通常是因为他们并不完全了解共享库如何在 Windows 上工作。
您可以通过使用 linker 标志-static
并与必要的依赖项 static 库文件 ( *.a
) 链接来避免 DLL 依赖项。 特别是对于 C++ 标准库libstdc++-6.dll
您将需要指定 linker 标志-static-libstdc++
。
或者您可以使用共享库 ( *.dll
),但是您需要将它们分发到与.exe
文件相同的文件夹中。
我编写了一个名为copypedeps
的工具,作为https://github.com/brechtsanders/pedeps的一部分来复制.exe
文件以及所有必需的.dll
文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.