Возможно ли реализовать управление версиями совместно используемой библиотеки в IBM-AIX? - PullRequest
0 голосов
/ 09 марта 2011

Я знаю, что управление версиями совместно используемой библиотеки может быть реализовано в Suse Linux. Но возможно ли это в IBM-AIX?

Любые ссылки будут очень полезны, поскольку я не могу найти подходящий материал с помощью поиска Google.

1 Ответ

1 голос
/ 13 марта 2011

Существует несколько видов управления версиями библиотеки:

  • Внешнее управление версиями, например, libreadline.so.4 против libreadline.so.5
  • Внутреннее управление версиями символов, как в libpthread.so.0 в Linux, который определяет, например, pthread_create@@GLIBC_2.1 и pthread_create@GLIBC_2.0

Последнее является расширением GNU и не поддерживается ни в одной системе, отличной от GLIBC.

Первое будет работать в AIXпросто отлично.

Еще одна особенность AIX заключается в том, что вы можете поместить несколько общих библиотек в одну архивную библиотеку, чтобы ваши клиенты могли продолжать связываться, например, с libfoo.a (содержащим shr.o и shr2.o).Старые и уже связанные клиенты будут продолжать использовать libfoo.a(shr.o), но новые связанные клиенты будут использовать libfoo.a(shr2.o).

. Эта схема позволяет AIX поддерживать несколько версий поддержки потоков POSIX в одном libpthread.a.Это также очень сбивает с толку тех, кто не привык к AIX, поэтому лучше не использовать его.

...