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

标签 c++ windows powershell gcc mingw

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

在 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/

相关文章:

c# - 如何使静态类使用 C++ 引用字符串变量?

c++ - 从使用 fmemopen() 打开的流中读取时的垃圾值

windows - 静态链接的应用程序 - 无效或损坏的 dll

php - 无法将远程 Openfiles.exe 数据拉入 PHP

powershell - 如果帐户被锁定,请发送消息

c# - 从 C# 调用 powershell cmdlet

c++ - vector 索引变量声明(size_t 或 std::vector<DATATYPE>::size_type)

c++ - nVidia 和 ATI 之间的 OpenGL 渲染差异

c++ - 模态对话框不会作为最顶层窗口打开

powershell - 在Powershell中切片数组(或列表)的更好方法