LINUX.ORG.RU

Линковка к мажорным версиям библиотек (Linking to common version of shared library)

 ,


1

3

Здравствуйте!

При указании опции -l линкеру, например -lboost, приложение слинкуется с конкретной версией библиотеки, например libboost.so.1.56.0.

У меня вопрос: каким образом можно изменить поведение линковщика, чтобы при указании опции -lboost - он слинковал приложение с libboost.so?

PS: Синтаксис -l:libboost.so не подходит.

Deleted

Ты упоролся? Он линкуется с libboost.so.1.56.0 потому, что libboost.so - это симлинк на него. man ldconfig.

DELIRIUM ☆☆☆☆☆
()

Могу врать, но, вроде, именно у boost всё плохо с линковкой в этом плане. Проблемы с бинарной совместимостью между версиями. В таком случае указать в зависимостях произвольную версию boost — почти наверняка выстрелить себе в ногу. Поэтому он и линкуется всегда с конкретной версией.

devsdc ★★
()

Ну можно через -L явно слинковать нужную версию...но придется пути прописывать... либо вообще, без -l/-L просто указатьа полное имя библиотеки, опять же, либо с полным путем, либо через переменные окружения установить нужный путь

energyclab
()
19 октября 2015 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.