libtool 的 -version-info

libtool的-version-info可以在 lib_LDADD中指定,格式是 current:reversion:age

current:当前接口的版本

reversion:当前实现的修订版

age:该lib当前能向前兼容的版本。例如current=10, age=2时,该lib能向前兼容到 10 – 2 = 8;

指定版本号是有一定规则的,libtool 的manual中提到:

1、每个lib从0:0:0开始
2、只在release前修改版本号
3、如果代码发生了改变(也是就接口的实现发生了变化),增加reversion的值(c:r:a 变为 c:r+1:a)
4、如果更新时增加、删除、或是改变了接口,增加current的值,把age设为0
5、如果比起上一个release增加了接口,增加age的值
6、如果比起上一个release删除或改变了接口,把age设为0

updatedupdated2022-02-222022-02-22