Связывание с определенной версией совместно используемой библиотеки в linux - PullRequest
4 голосов
/ 05 октября 2008

Мой процесс сборки состоит из генератора Qmake Makefile и типичной утилиты make в комплекте с linux.
Мое приложение состоит из нескольких общих библиотек, и основное приложение связано с ними.
Как я могу применить типичную схему версий Linux в моих библиотеках? (Используйте версию 2 -> ссылку на foo.so.2, которая указывает на foo.so.2.y.z со ссылкой, созданной ldconfig).

Ответ не должен быть конкретным для моего процесса сборки.

1 Ответ

8 голосов
/ 05 октября 2008

Ваша библиотека должна иметь имя libfoo.so.2.y.z, с символическими ссылками libfoo.so.2 и libfoo.so, оба указывают на это. Библиотека должна быть создана с помощью -soname libfoo.so.2 в командной строке компоновщика (или -Wl,-soname,libfoo.so.2 в командной строке gcc).

Надеюсь, это поможет!

...