【发布时间】:2012-04-05 12:46:39
【问题描述】:
我做了下面的makefile
.PHONY: check
check:
@[ -f `which cmake` ] || $(error Install cmake first)
.PHONY: check2
check2:
@[ -f `which cmake` ] || echo "Install cmake first"
.PHONY: exec
exec: check
@echo "Compiling executable ..."
@[ -d ./build ] || mkdir ./build
@cd ./build; cmake ../src; make
虽然目标 check2 有效(当 cmake 存在时,我没有收到“首先安装 cmake”的消息,当它不存在时,我收到消息),目标 check 即使存在 cmake 也总是退出。
所以我不能将目标 check 用于目标 exec。我必须使用目标 check2,当然,make 会退出,因为它找不到 cmake。
我希望 make 在它开始回显“Compiling executable ...”之前退出。
【问题讨论】: