我刚刚安装了 MinGW,在 bin 文件夹中我可以看到 7 个编译我的程序的 .exe 文件:
- c++.exe
- g++.exe
- mingw32-c++.exe
- mingw32-g++.exe
- gcc.exe
- mingw32-gcc.exe
- mingw32-gcc-4.4.1.exe
我的小程序 (testprog.cpp) 都能正确编译; a.exe
文件在bin文件夹下生成,运行正常。
它们之间有什么区别,我应该使用哪一个? 另外,如何在每次编译成功时自动将输出文件的名称从 a.exe 更改为 testprog.exe?
最佳答案
这些遵循 gcc 命名约定。
- c++.exe 是系统 c++ 编译器的传统名称
- g++.exe 和 gcc.exe 是为“当前系统”编译的 gcc 编译器的名称
- mingw32-* 版本是交叉编译到“mingw”目标的编译器的名称。在这种情况下,这与系统目标相同。
- 然后 mingw32-gcc-4.1.exe 是“gcc for mingw target version 4.1”
您通常应该编译带有“gcc”变体的 C 代码,以及带有“g++”变体的 c++ 代码。
使用-o filename
来指定输出文件名,默认是a.exe
关于c++ - 哪个 MinGW 文件用作 C++ 编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5047798/