Связывание с определенной версией совместно используемой библиотеки в linux
-
05-07-2019 - |
Вопрос
Мой процесс сборки состоит из генератора Qmake Makefile Qt и типичной утилиты make в комплекте с linux.
Мое приложение состоит из нескольких общих библиотек, и основное приложение связано с ними.
Как я могу применить типичную схему версий Linux в моих библиотеках? (Используйте версию 2 - > ссылка на foo.so.2, которая указывает на foo.so.2.y.z со ссылкой, сгенерированной ldconfig).
Ответ не должен быть конкретным для моего процесса сборки.
Решение
Ваша библиотека должна иметь имя libfoo.so.2.yz
с символическими ссылками на libfoo.so.2
и libfoo.so
. указывая на это. Библиотека должна быть создана с использованием -soname libfoo.so.2
в командной строке компоновщика (или -Wl, -soname, libfoo.so.2
в командной строке gcc ). р>
Надеюсь, это поможет!