【问题标题】:Append to variable not working when passing += assign variables from command line to make从命令行传递 += 分配变量时附加到变量不起作用
【发布时间】:2021-12-11 22:16:27
【问题描述】:

我正在尝试将值附加到已经从 cmdline 的 makefile 内部分配值的变量,但它不起作用,我不知道我在做什么错。

在我的 Makefile 中:

FPP+=ONE
FOO+=TWO

target:
     echo "Value: $(FOO)"

如果我跑步:make

它显示:

价值:一二

但如果我运行:make FOO+=THREE

我期待:

值:一二三

但我得到的不是:

价值:三

所以 cmdline FOO+=THREE 被覆盖 FOO 而不是追加。 我做错了什么?

【问题讨论】:

    标签: makefile


    【解决方案1】:

    在命令行上设置的变量不能通过 makefile 中的普通赋值来修改。你必须使用override directive:

    override FOO+=ONE
    override FOO+=TWO
    

    【讨论】:

    • 那行。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多