如何将版本信息添加到文件中?这些文件通常是可执行文件,.so和.a文件。
注意:我正在使用C ++,dpkg-build和Ubuntu 8.10,如果其中任何一个支持这个。
答案 0 :(得分:1)
对于共享对象,将-Wl,soname,<soname>
传递给gcc,或将-soname <soname>
传递给ld。
可执行文件和静态库本身没有版本信息,但如果您愿意,可以将其添加到文件名中。
答案 1 :(得分:1)
Linux可执行文件没有像Windows这样的版本信息...我能想到的唯一方法是创建一个静态字符串,它将通过版本控制跟踪系统扩展,如rcs,cvs,svn ,git,其中基于签入代码的人扩展了某个标识符,这里是使用的rcs标识符的示例...
static char *Id = "$Id$"; static char *Author = "$Author$";
上述字符串在检入修订控制系统时,下次检查时会扩展...
static char *Id = "Foo, v1.1, 2009-02-18, 13:13"; static char *Author = "foo";
使用在二进制文件上运行的实用程序“ident”,“ident”在二进制文件中查找版本控制系统(rcs)标识符。
希望这有帮助, 最好的祝福, 汤姆。