我不认为我理解makefile是如何工作的

时间:2013-05-10 19:56:23

标签: c++ makefile

我有一个使用openGL和c ++绘制3D星球的程序。它工作,我使用下面的makefile代码编译它(也可以),但我现在创建了一个新的.h和.cpp文件,我包含在我的newPlanet.cpp主程序中。我的问题是,如何将这个新的.h和.cpp文件添加到这个makefile中,以便用newPlanet.cpp编译它们?

VRUI_MAKEDIR := /opt/local/Vrui-2.6/share/make
ifdef DEBUG
VRUI_MAKEDIR := $(VRUI_MAKEDIR)/debug
endif

INSTALLDIR := $(shell pwd)


RESOURCEDIR = share/VruiExamplePrograms


include $(VRUI_MAKEDIR)/SystemDefinitions
include $(VRUI_MAKEDIR)/Packages.System
include $(VRUI_MAKEDIR)/Configuration.Vrui
include $(VRUI_MAKEDIR)/Packages.Vrui


BININSTALLDIR = $(INSTALLDIR)/$(EXEDIR)
RESOURCEINSTALLDIR = $(INSTALLDIR)/$(RESOURCEDIR)

PACKAGES = MYVRUI

ALL = $(EXEDIR)/NewPlanet   

.PHONY: all
all: $(ALL)

.PHONY: extraclean
extraclean:

.PHONY: extrasqueakyclean
extrasqueakyclean:


include $(VRUI_MAKEDIR)/BasicMakefile


$(EXEDIR)/NewPlanet: $(OBJDIR)/NewPlanet.o

1 个答案:

答案 0 :(得分:2)

很难说不知道其他文件中有哪些文件,但很好的选择是:

$(EXEDIR)/NewPlanet: $(OBJDIR)/NewPlanet.o $(OBJDIR)/YourNewFile.o

但答案在SystemDefinitionsPackages.VruiBasicMakefiles,可能还有很多其他地方。