我只是继承了一些c++代码,这些代码是用一个包含main和其他一些函数的cpp文件编写的。还有一些.h文件包含类及其函数定义。

到目前为止,该程序是使用g++ main.cpp命令编译的。现在我已经将类分离为.h和.cpp文件,我需要使用makefile还是我仍然可以使用g++ main.cpp命令?


当前回答

在main.cpp之后列出所有其他CPP文件。

ie

g++ main.cpp other.cpp etc.cpp

等等。

或者您可以单独编译它们。然后链接所有结果”。O”文件一起。

其他回答

我曾经使用一个定制的Makefile编译当前目录中的所有文件,但是我必须每次都将它复制到我需要的每个目录中。

所以我创建了我自己的工具-通用编译器,它使编译许多文件的过程更容易。

你仍然可以直接使用g++,如果你想:

g++ f1.cpp f2.cpp main.cpp

其中f1.cpp和f2.cpp是包含函数的文件。有关如何使用make进行构建的详细信息,请参阅优秀的GNU make文档。

您可以使用几个g++命令,然后链接,但最简单的是使用传统的Makefile或其他构建系统:如Scons(通常比Makefile更容易设置)。

~/In_ProjectDirectory $ g++ coordin_main.cpp coordin_funcc .cpp coordinator .h . cn

~/In_ProjectDirectory $ ./ a.t out .

... 工作! !

使用Linux Mint和Geany IDE

当我将每个文件保存到同一目录时,一个文件没有在该目录中正确保存;坐标文件。h。重新检查,它被保存为坐标。h,而不是->坐标。h。gch。那些小事。 Arg ! !

在main.cpp之后列出所有其他CPP文件。

ie

g++ main.cpp other.cpp etc.cpp

等等。

或者您可以单独编译它们。然后链接所有结果”。O”文件一起。