我想将版本字符串放入静态链接库中,并强制将其包含在链接它的任何可执行文件的映像中,这样我就可以检查映像(例如使用strings)并查看版本字符串。
使用标准 C 和/或 gcc 是否可以实现这一点,而不需要专门调整可执行文件的链接选项?(因为调整使用这些静态库的可执行文件的链接很容易忘记/维护起来很繁琐......)
看来我已经成功地在 C++ 中实现了这一点
extern char const * that_version_string;
static char const * const foo_that_version_string = that_version_string;
Run Code Online (Sandbox Code Playgroud)
在库的头文件中。但 C 不会编译这个:“非常量初始值设定项”或类似的东西。