在一个特定的项目中,我们试图将版本信息嵌入共享对象文件中。我们希望能够使用一些标准的linux工具来解析共享库,以确定用于自动测试的版本。
目前,我有“const int plugin_version = 14;”。我可以使用'nm'和'objdump'并验证其是否存在:
00000000000dcfbc r plugin_version
但是,我似乎无法从命令行轻松获取该变量的值。我认为这里会有一个POSIX工具来显示全局变量的初始化值。我已经考虑过使用变量的格式作为信息本身,即plugin_version_14,但这似乎是一个巨大的漏洞。不幸的是,将信息嵌入文件名中不是一种选择。任何其他建议,欢迎。
最佳答案
我过去使用的一个可怕的技巧是将版本信息嵌入变量名中,因此nm将显示:
00000000000dcfbc r plugin_version_14