C ++:用两个可执行文件创建一个makefile? C ++

时间:2015-12-03 23:48:12

标签: c++ makefile g++ executable

我有两个共享一个类的C ++程序。 progOne.cpp和progTwo.cpp。它们共享一个类fileInfo.cpp和相应的fileInfo.h文件。

这是我尝试创建makefile的方法。

all: progOne.cpp progTwo.cpp

progOne: progOne.cpp fileInfo.cpp
    g++ progOne.cpp fileinfo.cpp -o progOne

progTwo: progTwo.cpp fileinfo.cpp
    g++ progTwo.cpp fileinfo.cpp -o progTwo.

我收到了错误:make:没有什么可以为所有'。

做的

1 个答案:

答案 0 :(得分:3)

你需要:

all: progOne progTwo

这说明all取决于progOneprogTwo。如果您使用all: progOne.cpp ...,那么如果progOne.cpp已经存在,那么make就不需要做任何事情了,并说"没有什么可以为所有人做的事情"。

当然,接下来你需要解释一下progOneprogTwo如何依赖源文件,这样当你更新源文件时,它会重建可执行文件。

您可能还想将progOne.cpp的任何头文件添加到依赖项,例如progOne: progOne.cpp progOne.h - 如果progOne.h更新,则重建该程序。