-1

我正在尝试管理同一应用程序的两个不同版本。我有两个单独的 make 文件,一个用于调试,一个用于发布,它们都使用相同的源。我也有包装器 .bat 文件,其中包含要传递给 make 的参数等。重点是我希望能够为这两个文件保留我的目标文件,从而减少编译时间。

我尝试将目标文件的扩展名更改为.od(而不是通常的.o),但 make 不太喜欢这样。而且我不知道如何将这些对象放在单独的目录中,或者可能将广告附加到文件名中。

这通常是如何实现的?

4

1 回答 1

0

Make 具有用于构建.o文件和各种其他类型文件的内置规则。但是,如果您想让它使用非标准的不同扩展来构建目标,您必须自己创建该规则:它不会是内置的。

幸运的是,这非常微不足道。.od要创建从文件构建文件的规则.cpp(例如),您只需编写:

%.od : %.cpp
        $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(DEBUG_CXXFLAGS) -o $@ -c $<

DEBUG_CFLAGS在这里添加,但你可以使用任何你喜欢的东西。

于 2013-07-08T04:23:13.650 回答