我已经开始学习C ++,并写了一个“Hello World” – 程序。 当我尝试运行它在命令提示符下,它崩溃,并给我一个Windows消息,说:“你好World.exe已停止工作。”
码:
#include <iostream> #include <string> int main() { std::string response; std::cout << "Hallo Welt\n"; std::cin >> response; std::cout << "User: " << response; return(0); }
我使用Eclipse IDE和MinGW作为编译器。 我已经在环境variables中设置了MinGW / bin的path。 在我将MinGW / bin目录下的所有dll文件复制到Hello World.exe文件夹中之后,程序就可以正常工作了。 所以似乎无论是需要那些DLL都无法正确访问它们。 我想让我为每个创build的项目都复制dll的麻烦。 有什么办法可以解决吗?
我对我的电脑和编程术语还没有真正的自信,所以描述看起来有点粗糙 – 帮助仍然非常感谢!
干杯!
下面的说明为我做了这项工作,所以我把它们加在这里供将来参考,因为这个问题花了相当长的一段时间。
先决条件
- Windows 7 64位,应用了所有当前的软件更新。
- MinGW 0.5-beta-20120426-1或更高版本。
- Java JRE 1.7或更高版本。
- 蚀
安装步骤
- 从Oracle安装Java JRE。
- 安装MinGW。 在“选择组件”步骤中,选择“C ++编译器”和“MSYS基本系统”进行安装。
- 为C ++开发人员下载Eclipse。
- 解压缩下载到您的下载文件夹的Eclipse存档。
- 打开解压缩的Eclipse文件夹中找到的Eclipse应用程序。[2]
- 从文件和新建菜单中创建一个新的C ++项目来测试你的Eclipse安装。
- 在项目类型的Executable下面选择“Hello World C ++ Project”,在New C ++ Project的Toolchain中选择MinGW GCC。 键入一个项目名称,然后单击完成按钮。
- 将“-static-libgcc -static-libstdc ++”添加为新项目的链接器标志。 这个文本应该被添加到链接器标志字段,可以通过右键单击项目浏览器中的新项目并单击属性来找到该字段。 在“项目属性”下,展开“C / C ++构建”菜单,然后单击“设置”。 在“工具设置”选项卡下,展开“MinGW C ++链接器”菜单,然后单击“其他”。 将文本添加到链接器标记字段,然后单击应用按钮。
- 单击项目菜单下的生成项目,然后单击运行菜单下的运行。
- 通过查看控制台的输出确认您的开发环境正常。
请注意, 第8步是解决问题的那个。
注意:您还应该将freeglut.dll
复制到.exe
所在的目录中。
我有同样的问题。 而我发现,我的路径上可能有不同版本的相同的DLL。 所以我只是从路径列表的末尾移动我的C:\ MinGW \ bin路径到前面,现在它的工作。 但也许这个解决方案打破了一些依赖于其他版本的DLL文件的其他软件。