On Saturday 01 January 2005 21:59, Josef Spillner wrote:
Ich war leicht ungenau in meinen Ausführungen. Aus der Option a:b:c bastelt sich libtool etwas zusammen, was als foo.so.x.y.z herauskommt und aufgrund der Kompatibilität (Buchstabe c) den Wert hat, den x.y.z hatte, als c 0 war.
Ok:
x=a-c, soweit klar.
Durch ein paar Experimente habe ich herausgefunden:
y=c und z=b
Logik dahinter:
x ist das älteste Interface zu dem die Lib kompatibel ist. y ist die aktuelle ABI dieses Interface. z ist die Revision dieses x.y.
Beispiel: 3:4:1 ist die Interface-Version 3, Revision 4, und 1 Schritt rückwärtskompatibel.
Das ergibt libfoo.so.2.1.4: 2 ist das älteste Interface, das unterstützt wird, 1 ist die leicht inkompatible Variante davon, 4 ist die Revision von 2.1
Die Beispiele in Deiner Mail hätten so aussehen sollen: 1:1:0 -> 1.0.1 2:1:1 -> 1.1.1
Konrad