如何将 flex 和 bison 与 Qt 项目集成?

Vin*_*arg 5 c++ qt qt4 bison flex-lexer

我正在使用 Qt4 制作一个 GUI 程序,在 git 源代码控制下(Github 页面)。项目的一小部分需要扫描和解析。所以我想在项目中使用 flex 和 bison。我能想到3种方法-

  1. 将 flex 和 bison 文件排除在项目和源代码控制之外。生成 C 源文件并将其添加到项目中。
  2. 将 flex 和 bison 文件添加到项目中,但单独运行 flex 和 bison 命令。
  3. 与 IDE(Ubuntu 12.04 上的 Qt Creator)和源代码控制正确集成,以便在我构建 flex 时调用 bison 来生成词法分析器和解析器。

我显然想要第三种选择,但不知道该怎么做。

请建议最好的选择和方法。或者有其他方法可以做到吗?

注意 - 我希望该项目是跨平台的,也可以为 Windows 构建。

Vin*_*arg 3

通过点击 @Bort 评论中的链接,我能够很好地将 Flex 和 Bison 与我的 Qt 项目集成。我在项目设置中添加了自定义构建步骤。下面是 Qt Creator 中的屏幕截图。

在此输入图像描述

我为此提出了一个相关问题 -尽管函数存在,但未定义的参考错误