在编译时生成信息文件

时间:2017-05-30 17:17:20

标签: c++ qt compilation qmake

我试图让我的项目生成一个包含相关编译数据的文件(编译器版本,lib版本,日期,git提交等)。所以我的问题是如何在编译时才能运行,何时它可以访问所需的信息?

1 个答案:

答案 0 :(得分:3)

编译日志怎么样?如果它没有提供足够的信息,您可以创建一个收集数据并将其打印到文件的脚本。

  • 编译器版本:

    • 对于Visual Studio,您可以查看this answer
    • 如果您的编译器是gcc,请使用gcc --version
  • 当前的git提交可以通过here描述的任何方法获得。

  • 库版本将取决于每个特定情况:编译日志可能包含其中一些的数据,打印库路径(有时此类目录包含版本号,至少对于某些库而言),等等。 / p>

  • 当前日期/时间:

    • bash:date +%Y-%m-%d:%H:%M:%S
    • 视窗'命令行,检查this answer

最后,脚本可以作为makefile的最后一步调用,或者作为Visual Studio项目的post-build event调用。