我见过一个类似的,两年前的问题,但没有找到答案......
在 Windows 7 64bit 下,我一直在尝试通过 Power Shell 使用 MinGW gcc 版本编译一个简单的“hello world”C++ 源代码。添加了环境变量。从 Power Shell 我可以访问编译器,例如。 g++ --help
运行良好,但编译时不会创建任何可执行文件或任何其他输出。
这是在 main.cpp 中:
#include <iostream>
using namespace std;
int main(){
cout << "Hello World" << endl;
return 0;
}
试过这个:
g++ -o test.exe main.cpp
当我按回车时,编译似乎完成了,但没有任何响应,我的源代码仍然单独放在他的文件夹中。
PS g++ no output
如果我在源文件中出错,编译器会识别它,并且错误消息会正常出现。
我已经从这里删除了链接(我只允许使用 2 个链接:()
如果我使用 -Wall 进行编译,也会出现故意错误的警告消息。
所以在这一点上似乎没问题。只是为了确保我已经在整个硬盘中搜索了我的 test.exe,但它无处不在......
无论如何,我正在使用代码块来编程 C++。因此,提到的 MinGW gcc 与代码块一起安装。从代码块它运行良好,没有任何问题。
然后我将独立于代码块的 MinGW 安装到 C:\MinGW,注意不要在目录名称中使用任何空格。 MinGW v0.6.2-beta-20131004-1 已安装。一切都如前所述那样发生。环境变量当然已更新,但仍然没有创建可执行文件或 Power Shell 中的任何响应表明进程失败。
尝试使用 Power Shell 和 Power Shell (x86)。同样的事情发生了。
请帮助我提出任何想法,让我知道我做错了什么。
上传:
正如 Jean-François Fabre 所建议的,我已经使用选项 -v 运行了 g++ 命令,结果在这里:
run with option -v
最佳答案
正如已删除的答案之一所说,当 g++
时不会发生此问题。驻留在当前目录中。此外,我发现当它可以通过 PATH
访问时,它也不会发生。环境变量。我不知道这是什么原因(可能与共享库或辅助可执行文件的搜索路径有关),但以下在 Msys2 上为我修复了它:
export PATH=$PATH:/mingw64/bin/
完成上述操作后,我确实从 g++
获得了有用的标准错误输出,并且通常编译器按预期工作。
关于c++ - MinGW g++ 在 powershell 中不创建输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41419210/