170 похожих чатов

Однако, здравствуйте. Я пришел с просьбой о помощи. В общем,

есть библиотека, допустим libzmq. Основной пакет устанавливает файл libzmq.so.5.1.1 и симлинк на него с именем libzmq.so.5
В dev-пакете лежат заголовки, файл pkgconfig, и симлинк с именем libzmq.so на libzmq.so.5.1.1

Одна наша библиотека зависит от libzmq. CMake всё прекрасно находит, линкует. Для линкера попадает ключ "-lzmq". Когда запускаешь "ldd lib<наша_библиотека>.so", то выводит, что прилинкован файл "libzmq.so.5", то есть используется симлинк из основного пакета.

Сопсна, вопрос: как нашелся этот симлинк? Что на него указало? Почему не "libzmq.so"?

Сопсна, зачем мне это: делаем app-local distribution, и так получается, что затягивается симлинк libzmq.so и сама библиотека libzmq.so.5.1.1, но, так как слинковано с libzmq.so.5, то наша локальная библиотека не используется, а берется системная. Собственно, надо это исправить.

4 ответов

19 просмотров

Немного не в тему, но тут лучше использовать snap/flatpak или статичную линковку. ИМХО

Пашечка- Автор вопроса
Yaroslav
Немного не в тему, но тут лучше использовать snap/...

Не вариант. Ограничены средой. Статичная линковка тоже не вариант, потому что не для всех библиотек она возможна, zmq просто как пример.

Что такое "пакет"?

Версия, с которой слинкуется динамическая библиотека прописана в её поле SONAME. Т.е. в вашем случае у libzmq.so.5.1.1 SONAME=libzmq.so.5. Это можно посмотреть так: readelf -d /lib64/libzmq.so.5.1.1 | grep -i soname

Похожие вопросы

Обсуждают сегодня

Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Коллеги, добрый вечер. Создаю коллекцию от TFPGMap, ключ - перечисление, значение - целое. Нужно отсортировать коллекцию по значению. Как это можно сделать?
Kirill Filippenok
11
Скажи а ты когда этот канал создавал ты уже дельфи не любил, или это со временем пришло?
Роман Лях (rgreat)
18
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
Всем привет! Использую кастомное модальное диалоговое окошко, все по классике - mrOK, mrCancel как ModalResult. Однако есть нюанс - в главной форме есть универсальный обработч...
Олег Гранишевский
20
Карта сайта