【问题标题】:Can I run a post-build step after a makefile build in Eclipse?我可以在 Eclipse 中构建 makefile 之后运行构建后步骤吗?
【发布时间】:2019-02-22 15:44:42
【问题描述】:

我正在尝试在从 Eclipse 构建 makefile 目标后运行构建后步骤。由于它是一个 makefile 项目,因此没有 Post-Build 选项。

我知道与此类似的问题(例如this one),但不幸的是,没有一个答案对我有用,因为答案本质上是“将您的构建步骤放入生成文件中”。但是我的构建后步骤会处理 Eclipse 生成的构建日志,在 make 完成之前当然不存在。

在make 进程运行后,有没有办法运行构建后步骤?我会接受答案只是“不”,但如果有人能证实这一点,我将不胜感激。

【问题讨论】:

  • 将“构建命令”从 make 更改为 make && my_post_build_script 是否有效?
  • 不,它只是通过“&&”作为目标:make: *** No rule to make target '&&'. Stop.
  • Eclipse 生成的构建日志中有什么内容?
  • 只是make的输出,保存到一个文本文件中。
  • 我可以在 makefile 本身中进行大量管道、重定向等操作,但我希望尽可能避免这种情况(出于与构建过程相关的一大堆原因)

标签: eclipse makefile eclipse-cdt


【解决方案1】:

我不知道有一种方法可以让 Eclipse 在 makefile 项目中执行显式的构建后步骤,但解决它似乎相当简单。这里有一个建议:

编写第二个名为 makefile-wrapper 的 makefile,如下所示:

all:
    make > build.log
    post-build-script.sh build.log

然后在Eclipse中设置build命令为make -f makefile-wrapper。

当 Eclipse 调用 make -f makefile-wrapper 时,它将运行上面给出的配方,这将再次调用 make,并将其输出保存到 build-log.txt。递归调用将使用您的真实 makefile(由于递归调用中没有 -f 参数),并保存其输出,然后可用于您的构建后脚本处理。

【讨论】:

  • 这似乎是解决这个问题的最简单的方法 - 由于各种原因,它在我的具体情况下并没有太大帮助,但它被标记为解决方案,因为它通常是合理的。
猜你喜欢
  • 2013-02-14
  • 2011-01-20
  • 2023-03-29
  • 2020-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-10
  • 1970-01-01
相关资源
最近更新 更多