UpStream/LibraryVersioning: различия между версиями

Материал из ALT Linux Wiki
(Import from freesource.info)
 
Нет описания правки
Строка 1: Строка 1:
[[Category:Devel]]
[[Category:Devel]]
{{Crap}}
{{MovedFromFreesourceInfo|AltLinux/Sisyphus/devel/UpStream/LibraryVersioning}}
{{MovedFromFreesourceInfo|AltLinux/Sisyphus/devel/UpStream/LibraryVersioning}}



Версия от 12:16, 5 августа 2008

48px-Mail-mark-junk red.svg.png
Эта статья протухла.
Её нужно существенно доработать или удалить


Freesource-logo.png Blue Glass Arrow.svg MediaWiki logo.png
Эта страница была перемещена с freesource.info.
Эта страница наверняка требует чистки и улучшения — смело правьте разметку и ссылки.
Просьба по окончанию убрать этот шаблон со страницы.


Версии библиотек

Андрей Булава в devel@

library versioning -- это http://people.redhat.com/drepper/symbol-versioning ?

ЕМНИП, "it's only meaningful for ELF platforms that support shared libraries" -- http://www.gnu.org/software/binutils/manual/ld-2.9.1/html_node/ld_25.html

Кроме того, "Symbol versioning only versions function/variable name symbols, and does not version structures etc, so it does not solve problems with mixed protocols, data structures and other things with mixed versions of shared library. Thus, it is not a silver bullet for all cases." -- http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#versymproblems

P.S. По ходу ответа читал http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html -- было интересно. Особенно http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html#naminglibpkg -- policy, которая с одной стороны предупреждает геморрой при смене soname, а с другой требует нешуточных затрат на своё введение в эксплуатацию, и в первую очередь -- массовое переименование пакетов с библиотеками. Кстати, кто-нибудь знает, как при этом в Debian обеспечивается установка новых libfoo{N+1}?

В Debian все библиотеки собираются в виде lib<name><soname>. lib<name>-devel обычно одна штука, соответствующая последнему <soname>. При появлении новой версии библиотеки, все зависящие пакеты постепенно портируются, а старая версия библиотеки некоторое время лежит в репозитории, пока не станет никому нужна. Обычно при такой смене soname на все зависимые пакеты вешается баг "пора обновиться" MikhailGusarov /03.02.2007 22:07/

Ссылки