gpt4 book ai didi

makefile - gnu make : how to stop and exit when errors occur in for loop make

转载 作者:行者123 更新时间:2023-12-02 20:05:33 29 4
gpt4 key购买 nike

我使用'for'循环创建子目录,但是当在子目录中make时出现一些错误时,它继续创建下一个目录,当在子目录中'make'出现错误时我可以停止吗?

all :
for i in $(SUBDIRS); do make -C $$i dll; done;
||
make[1]: *** [bd_snmp.o] error 1
make[1]: Leaving directory `/home/ping/work/svnsocserv/src/bd_snmp'
make[1]: Entering directory `/home/ping/work/svnsocserv/src/bd_snmp_proxy'

最佳答案

当然,只需在 shell 脚本中添加一些内容来检查:

all:
for i in $(SUBDIRS); do $(MAKE) -C $$i dll || exit 1; done

(注意始终使用 $(MAKE) 递归调用子 make,而不是 make)。

但这不是一个很好的方法,因为虽然它在子 make 失败时立即退出,但它不遵守 make -k 选项来继续运行。

关于makefile - gnu make : how to stop and exit when errors occur in for loop make,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18940980/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com