我有两个C++程序,它们都共享一个类。progOne.cpp和progTwo.cpp。它们都与相应的fileInfo.h文件共享一个类fileInfo.cpp。
这就是我尝试创建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:什么都不做。
您需要:
all: progOne progTwo
这告诉make all
依赖于progOne
和progTwo
。如果您使用all: progOne.cpp ...
,那么如果progOne.cpp
已经存在,make将不需要做任何事情,并表示"不需要为所有人做任何事情"。
当然,接下来你必须解释progOne
和progTwo
是如何依赖于源文件的,这样当你更新源文件时,它就会重建可执行文件。
您可能还想将progOne.cpp
的任何头文件添加到依赖项中,例如progOne: progOne.cpp progOne.h
-以便在更新progOne.h
时重新生成程序。