【发布时间】:2012-08-06 17:09:36
【问题描述】:
我正在为 OS X Lion 上的 makefile 苦苦挣扎。我正在尝试使用 % 模式规则将我的所有 .c 文件编译为当前目录中的对象。我正在使用规则:
%.o : %.c
$(CC) -c $(CFLAGS) $< -o $@
但是 make 说没有目标。我知道 % 模式是 gMake 的功能,但是 -v 说我已经安装了 GNU make。我也尝试过旧式:
.cpp.o:
gcc $^ -o $@
但它不起作用。我做错了什么?谢谢。
【问题讨论】:
-
您的输入文件是
.c文件还是.cpp文件? -
我的例子只是例子。实际上,我搜索
.cc文件。%.o: %.cc $(CXX) -c $(CXXFLAGS) $^ -o $@ -
我已经解决了。我尝试使用带有 vpath 的模式在单独的文件夹中构建。我已经更改了我的文件夹结构以构建单个文件夹,并且模式运行良好。我不知道为什么,我认为它应该与 vpath 一起工作。
标签: macos build makefile gnu gnu-make