MinGW g++ 在 powershell 中不创建输出

RPe*_*ter 7 c++ windows powershell gcc mingw

我见过一个类似的两年前的问题,但没有找到答案......

\n\n

在Windows 7 64位下,我一直在尝试通过Power Shell使用MinGW gcc版本编译一个简单的“hello world”C++源代码。添加了环境变量。从 Power Shell 我可以访问编译器,例如。g++ --help运行良好,但编译时不会创建可执行文件或任何其他输出。

\n\n

这是在main.cpp中:

\n\n
#include <iostream>\nusing namespace std;\n\nint main(){\n  cout << "Hello World" << endl;\n  return 0;\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

尝试过这个:

\n\n
g++ -o test.exe main.cpp\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我按回车键时,编译似乎已完成,但没有任何响应,我的源代码仍然单独位于他的文件夹中。

\n\n

PS g++没有输出

\n\n

如果我在源文件中出现错误,编译器会识别它,并正常显示错误消息。

\n\n

我已从此处删除了链接(我只允许使用 2 个链接:( )

\n\n

如果我使用 -Wall 进行编译,也会出现因故意错误而出现的警告消息。

\n\n

所以目前看来还可以。只是为了确保我已经在整个硬盘中搜索了我的 test.exe,但它无处可去......

\n\n

无论如何,我正在使用代码块进行 C++ 编程。因此,提到的 MinGW gcc 与代码块一起安装。从代码块来看,它运行良好,没有任何问题。

\n\n

然后我将独立于代码块的 MinGW 安装到 C:\\MinGW,注意不要在目录名称中使用任何空格。MinGW v0.6.2-beta-20131004-1 已安装。一切都按照前面提到的方式发生。当然,环境变量已更新,但仍然没有创建可执行文件,也没有在 Power Shell 中发出任何表明进程失败的响应。

\n\n

尝试使用 Power Shell 和 Power Shell (x86)。同样的事情发生了。

\n\n

请帮助我提供任何想法,让我知道我做错了什么。

\n\n

上传:\n根据 Jean-Fran\xc3\xa7ois Fabre 的建议,我已使用选项 -v 运行 g++ 命令,结果如下:\n使用选项 -v 运行

\n

Rus*_*lan 2

g++正如已删除的答案之一所说,当驻留在当前目录中时,不会发生此问题。此外,我发现当可以通过PATH环境变量访问它时也不会发生这种情况。我不知道其原因(可能与共享库或辅助可执行文件的搜索路径有关),但以下内容在 Msys2 上为我修复了它:

export PATH=$PATH:/mingw64/bin/
Run Code Online (Sandbox Code Playgroud)

在上述之后,我确实从 得到了有用的 stderr 输出g++,并且通常编译器按预期工作。