gpt4 book ai didi

c++ - 从 Makefile 中的 C++FLAGS 中删除标志?

转载 作者:IT老高 更新时间:2023-10-28 22:12:32 27 4
gpt4 key购买 nike

我有一个 Makefile,其中包含另一个设置许多默认值的 makefile。我无法编辑包含的 makefile,并且我想更改我的 makefile 中 C++FLAGS 的值,即使它是在包含的 makefile 中设置的。具体来说,每当 debug=1 时,我想从 C++FLAGS 中删除优化标志。

我尝试了以下方法:

C++FLAGS=$(filter-out -O3,$(C++FLAGS))

失败并出现以下错误:

Recursive variable `C++FLAGS' references itself (eventually).  Stop.

好像做这样的事情应该是可能的,有人知道其中的 secret 吗?

最佳答案

C++FLAGS:=$(filter-out -O3,$(C++FLAGS))

:= 赋值立即 评估右值,因此这应该有效。另一方面,= 具有延迟扩展语义(即,只要使用左值,C++FLAGS 就会扩展,从而导致递归)。

关于c++ - 从 Makefile 中的 C++FLAGS 中删除标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9611987/

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