【问题标题】:How can I print message in Makefile?如何在 Makefile 中打印消息?
【发布时间】:2012-07-31 07:44:06
【问题描述】:

我想在使用makefile 进行构建过程时打印一些消息。下面的可以打印消息,但不会执行后面的脚本。我该如何解决这个问题?

ifeq (yes, ${TEST})
        CXXFLAGS := ${CXXFLAGS} -DDESKTOP_TEST
test:
        @echo '************  TEST VERSION ************'
else
release:
        @echo "************ RELEASE VERSIOIN **********"
endif

【问题讨论】:

  • "后面的脚本"?什么脚本?
  • @Beta 他的意思可能是脚本在该行之后不会继续。

标签: makefile


【解决方案1】:

不清楚你想要什么,或者你是否希望这个技巧适用于不同的目标,或者你是否在其他地方定义了这些目标,或者你正在使用什么版本的 Make,但到底是什么,我会出去走走:

ifeq (yes, ${TEST})
CXXFLAGS := ${CXXFLAGS} -DDESKTOP_TEST
test:
$(info ************  TEST VERSION ************)
else
release:
$(info ************ RELEASE VERSIOIN **********)
endif

【讨论】:

    【解决方案2】:

    $(info your_text)信息。这不会停止执行。

    $(warning your_text)警告。这会将文本显示为警告。

    $(error your_text)致命错误。这将停止执行。

    源代码:https://www.gnu.org/software/make/manual/make.html#Make-Control-Functions

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-02
      • 2018-12-28
      • 2015-12-20
      相关资源
      最近更新 更多