文件版本信息

时间:2010-02-19 12:06:18

标签: c++ linux version

如何将版本信息添加到文件中?这些文件通常是可执行文件,.so和.a文件。

注意:我正在使用C ++,dpkg-build和Ubuntu 8.10,如果其中任何一个支持这个。

2 个答案:

答案 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)标识符。

希望这有帮助, 最好的祝福, 汤姆。