Shared Libs Policy/en

Материал из ALT Linux Wiki
< Shared Libs Policy
Версия от 15:34, 28 июня 2024; Vt (обсуждение | вклад) (Новая страница: «Summarized version of the policy: # '''Definition''': #* A shared library (`.so` file) is intended for use by multiple programs. #* Explicitly loaded `.so` files (e.g., plugins) are not covered by this policy. # '''Policy Summary''': #* Avoid placing a new '''soname''' in a package with the same name where the old '''soname''' was located. # '''Packaging Libraries''': #* Libraries should be packaged in a way that the package name changes with each ABI break....»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Summarized version of the policy:

  1. Definition:
    • A shared library (`.so` file) is intended for use by multiple programs.
    • Explicitly loaded `.so` files (e.g., plugins) are not covered by this policy.
  2. Policy Summary:
    • Avoid placing a new soname in a package with the same name where the old soname was located.
  3. Packaging Libraries:
    • Libraries should be packaged in a way that the package name changes with each ABI break.
    • The package should be named `lib%name%abiversion`, where `%abiversion` is the variable part.
    • Development parts of libraries should be in a separate (only one for each library) package named `lib%name-devel`.
    • Static libraries should be in a separate package named `lib%name-devel-static`.
  4. Choosing the Right %abiversion:
    • Use the soversion if explicitly used by library authors.
    • Otherwise, choose a convenient naming scheme (e.g., sequential numbers).
  5. Legacy Libraries and Backports:
    • Move old libraries to the 'System/Legacy libraries' group when a new version appears.