我用C++写了一些简单的代码,我构建了它,并在笔记本电脑上运行,一切都正常工作。当我试图在我哥哥的笔记本电脑上运行.exe文件时,它给了我一个错误The program can't start because libgcc_s_sjlj-1.dll is missing from your computer. Try reinstalling the program to fix this problem.
我是不是错过了应该添加的东西?
注意:我不知道这是否重要,但我使用的是Code::Blocks。
感谢
这很重要,因为您使用了Code::Blocks。如果你不知道,你很可能使用了Code::Blocks和MinGW。在那台机器上安装它,然后重新启动可能会修复它。
C++程序需要有一个运行库--您可以认为它需要.NET Framework来运行C#或JRE来运行Java程序。Visual C++使用msvcrt
(称为Visual C++运行时)。许多Windows安装似乎默认带有msvcrt
,这可能解释了为什么使用MSVC的人不太可能遇到这样的问题。
如果静态链接CRT(C运行时),则可以取消客户端必须安装DLL文件的要求,而代价是要有更大的.exe
文件。
一个相关的SO回答:该程序可以';t启动,因为libgcc_s_dw2-1.dll缺少
您可以将该DLL与您发布的.exe放在同一文件夹中,它应该可以在中工作