关于Makefile的几个问题
问题1 如果您定义步骤关于Makefile的几个问题,makefile,Makefile,问题1 如果您定义步骤 22 clean: 23 rm $(OBJECTS) 如果有什么方法可以优雅地“什么都不做,如果没有什么可以删除” 问题2 再次假设下面这一行,当处理该行时找不到任何文件时,有没有一种方法可以优雅地退出并发出警告 6 SOURCES = $(shell echo src/*.cpp) 问题3 如何对最终产品执行最终后处理,如mv$(product)someDir?这条指令会在哪里?1)只要使用rm-f,它告诉rm如果文件丢失,就忽略它 3) 这可能只是
22 clean:
23 rm $(OBJECTS)
如果有什么方法可以优雅地“什么都不做,如果没有什么可以删除”
问题2
再次假设下面这一行,当处理该行时找不到任何文件时,有没有一种方法可以优雅地退出并发出警告
6 SOURCES = $(shell echo src/*.cpp)
问题3
如何对最终产品执行最终后处理,如mv$(product)someDir
?这条指令会在哪里?1)只要使用rm-f
,它告诉rm
如果文件丢失,就忽略它
3) 这可能只是实际构建产品的目标的最后一步,或者您可以创建一个名为
install
(例如)的目标,该目标取决于您的构建目标,然后包含此mv
命令 回答问题#2:
SOURCES := $(or $(wildcard src/*.cpp), $(warning No source found in 'src'))
当没有与src/*.cpp
模式匹配的文件时,这将发出警告<代码>源变量保持为空
请参阅GNU Make手册中相应的