[英]g++ does not make any file or give any output
我刚开始使用 g++,从该站点下载最新版本,并制作了一个简单的 HelloWorld 程序。
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!" << endl;
return 0;
}
当我尝试使用 powershell window 和 g++ 执行时,在正确的目录中,我使用以下命令:
g++ HelloWorld.cpp -o HelloWorld.exe
这不会给出 output 并且不会生成任何文件。 我根据我在网站上阅读的其他答案使用了 -v 命令,它给了我这个。 我不知道如何继续和执行我的程序。
命令
g++ HelloWorld.cpp -o HelloWorld.exe
不执行propgam,它只是构建可执行文件HelloWorld.exe
。
因此,在g++ HelloWorld.cpp -o HelloWorld.exe
检查HelloWorld.exe
文件的外观。 如果是这样,只需像这样运行它:
.\HelloWorld.exe
Didier 接受的答案帮助我解决了同样的问题。 在我的例子中, HelloWorld.exe
可以毫无问题地使用printf
,但是std::cout
在 Windows 控制台中没有产生 output。
HelloWorld.exe
可以通过dumpbin.exe /imports HelloWorld.exe
检查( dumpbin.exe
随 Visual Studio 2019 一起分发)。 在我的例子中,这显示了对 MinGW 的libstdc++-6.dll
的依赖,它又依赖于 MinGW 的libgcc_s_seh-1.dll
和libwinpthread-1.dll
。
底线:解决方案是将 MinGW bin 文件夹添加到您的路径中,就像 Carucel 所建议的那样。 正确配置路径后,您可以使用“where”命令(来自 CMD)来验证是否可以找到所需的 DLL(例如: where libstdc++-6.dll
)。
我遇到了同样的问题,在使用传统的批处理控制台而不是Powershell运行它之后,我发现缺少一个dll
。 dll错误不会在powershell命令行中弹出(上帝只知道为什么)。
就我而言,它是libisl-15.dll
,但在您的PC上可能有所不同。
希望这可以帮助世界上的某人!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.