我试图让我的项目生成一个包含相关编译数据的文件(编译器版本,lib版本,日期,git提交等)。所以我的问题是如何在编译时才能运行,何时它可以访问所需的信息?
答案 0 :(得分:3)
编译日志怎么样?如果它没有提供足够的信息,您可以创建一个收集数据并将其打印到文件的脚本。
编译器版本:
gcc --version
。当前的git提交可以通过here描述的任何方法获得。
库版本将取决于每个特定情况:编译日志可能包含其中一些的数据,打印库路径(有时此类目录包含版本号,至少对于某些库而言),等等。 / p>
当前日期/时间:
date +%Y-%m-%d:%H:%M:%S
最后,脚本可以作为makefile的最后一步调用,或者作为Visual Studio项目的post-build event调用。