如何使用GCC运行C ++程序?

时间:2014-07-01 22:34:52

标签: c++ gcc

我需要运行一个演示程序ba_demo.cpp,它位于文件夹结构“C:/root/demo_parent1/demo_parent2/demo.cpp”中,此文件中使用了以下代码。< / p>

#include "root/sub1/sub2/header_file.h".

该文件位于

'C:/root/sub1/sub2/header_file.h'

当我尝试通过命令

编译演示程序时
C:\root\demo_parent1\demo_parent2> gcc demo.cpp

找不到头文件并抛出错误。为了成功运行演示程序,我应该对命令进行哪些更改?

2 个答案:

答案 0 :(得分:3)

首先,您必须通过添加标记root来通知编译器在哪里查找-IC:目录 所以你的命令看起来像这样:

C:\root\demo_parent1\demo_parent2> g++ demo.cpp -IC:

但那不实用。更好的改变包括

#include header_file.h

并仅添加/ root / sub1 / sub2 /目录,如下所示:

C:\root\demo_parent1\demo_parent2> g++ demo.cpp -IC:\root\sub1\sub2\

现在您已将程序编译为a.out文件。你可以通过

执行它
C:\root\demo_parent1\demo_parent2>./a.out

您可以将输出名称更改为demo.exe,如下所示:

C:\root\demo_parent1\demo_parent2> g++ demo.cpp -IC:\root\sub1\sub2\ -o demo.exe

请注意,由于您在某些&amp; nix模拟器下使用Windows,我的示例中的斜线可能是错误的,但我现在无法检查它们。使用谷歌检查如何正确处理它们。

编辑:另外,不要忘记采取Lukas Holt的建议并使用g ++!使用适当的编译器来使用正确的语言非常重要。

答案 1 :(得分:1)

您的.cpp文件位于:C:/root/demo_parent1/demo_parent2/demo.cpp

您包括:

#include "root/sub1/sub2/header_file.h"

这是一条相对路径。您需要使用-I标志指定include目录,或者将header_file.h移动到C:/root/demo_parent1/demo_parent2/root/sub1/sub2/header_file.h。 最简单的解决方案是#include "header_file.h",并将其移动到与demo.cpp相同的目录中。

然后您将能够使用gcc编译它,并执行生成的文件。