编译时生成信息文件

Generating Info File on Compilation

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

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

  • 编译器版本:

    • 对于Visual Studio,您可以检查this answer
    • 如果你的编译器是 gcc 使用 gcc --version.
  • 当前 git 提交可以通过 here.

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

  • 当前date/time:

    • bash: date +%Y-%m-%d:%H:%M:%S
    • Windows'命令行,勾选this answer.

最后,脚本可以作为生成文件中的最后一步调用,或者在 Visual Studio 项目中作为 post-build event 调用。