【发布时间】:2014-02-09 03:39:24
【问题描述】:
我是 makefile 的新手,最近刚刚创建了一个适用于 c++ 项目的 makefile。它有两个 cpp 文件和一个 h 文件。我正在尝试将我的文件转换为在 linux 中工作,但似乎无法弄清楚如何。有什么想法吗?
EXE = NumberGuessingGame.exe
CC = cl
LD = cl
OBJ = game.obj userInterface.obj
STD_HEADERS = header.h
CFLAGS = /c
LDFLAGS = /Fe
$(EXE): $(OBJ)
$(LD) $(OBJ) $(LDFLAGS)$(EXE)
game.obj: game.cpp $(STD_HEADERS)
$(CC) game.cpp $(CFLAGS)
userInterface.obj: userInterface.cpp $(STD_HEADERS)
$(CC) userInterface.cpp $(CFLAGS)
#prepare for complete rebuild
clean:
del /q *.obj
del /q *.exe
【问题讨论】:
-
一大:在linux中没有
del。或 .exe... -
它的 rm 对吗?而不是del
-
linux平台有哪些工具? (如果您不确定,请尝试
make -v和g++ -v。) -
另外,目标文件扩展名是
.o(不是.obj),选项用破折号而不是斜杠指定。 (而且编译器不太可能与选项兼容;-Fe可能根本不是您想要的选项。) -
Make 已经知道如何编译和链接,因此您真正需要的只是无法推断的依赖项,并且您需要的任何选项都会覆盖。