A csomag és a library verziója általános esetben persze tök különböző is lehet, de sok fejlesztő választ azonos értéket, így például a readline esetén is megegyezik a kettő.
Algernon: egy valamit nagyon nem értek.
Tegyük fel, hogy valaki csinál egy új progit, ami igényli az 5-ös readline egy új szolgáltatását. És ezt valaki 4.3-as readline-nal akarja futtatni. Mit kap? Valami olyasmi hibaüzenetet, hogy nem találja a libreadline.so.5-öt.
Tegyük fel, hogy a mostani readline 4.4 lenne, vagyis változatlanul 4 lenne a soname, libreadline.so.4 lenne a fájlnév. Valaki ennek használatával, ehhez linkelve készít valami libet. Másvalaki megpróbálja 4.3-assal futtatni. Mit kap? Valami olyasmi hibaüzenetet, hogy feloldatlan szimbólumok.
Tehát mindkét esetben pontosan azonos módon hibát kapsz. A különbség csak annyi, hogy az egyik esetben picit egyértelműbb, picit beszédesebb a hibaüzenet. Azt tehát mindkét esetben le kell kommunikálnod a felhasználóval (bármilyen módon, legyen az csomag Depends mezeje, honlapon leírás, dobozos termék oldalán figyelmeztetés, akármi) hogy neki legalább 4.4 vagy 5.0 verziójú readline fog kelleni.
Akkor tehát miért is jobb az 5-ös soname-re váltás a 4-esnél maradásnál?