使用MinGw标准2011进行基本编译

时间:2014-06-05 18:06:46

标签: c++ c++11 compiler-errors mingw

我的程序编译期间出错了。

(我必须使用标准2011来std::regex。)

在我的MinGw cmd中,我转到我的程序所在的文件夹,并写下:

  

g ++ -Wall -c -std = c ++ 0x main.cpp

这里的每件事都没问题,但在我写完之后:

  

g ++ -Wall -o -std = c ++ 0x main.exe main.o

它告诉我:

  

g ++。exe:错误:main.exe:没有这样的文件或目录

为什么?

1 个答案:

答案 0 :(得分:4)

因为你以错误的顺序写开关。 -o要求目标文件名在其后面。

在此,您已告知GCC将main.exemain.o关联到可执行文件-std=c++0x,而main.exe尚未存在。< / p>

g++ -Wall -o -std=c++0x main.exe main.o
#         ^^^^^^^^^^^^^ ????????

相反,告诉它将main.o链接到C ++ 0x模式下的可执行文件main.exe

g++ -Wall -std=c++0x -o main.exe main.o
#                    ^^^^^^^^^^^