Прочитать номер версии файла библиотеки функцией, которая находится в этой библиотеке, у меня не удалось.
Добавлять файл ресурсов не решился.
Итоговое решение, может быть, кому-нибудь пригодится :
- написал отдельную библиотеку, в которой есть функция нахождения внутри бинарного файла информации о ...
Найдено 10 результатов
- 10.08.2022 10:58:26
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
- 03.08.2022 10:58:13
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
Путь до загруженной библиотеки можно узнать так , пример:
h:= LoadLibrary('libc.so.6');
@getrandom:= GetProcAddress(H, 'getrandom');
WriteLn('LIB: ', mbGetModuleName(@getrandom));
результат
LIB: /usr/lib/libc.so.6
К сожалению, для *.so получаю сообщение No version info load ((
Вот ...
h:= LoadLibrary('libc.so.6');
@getrandom:= GetProcAddress(H, 'getrandom');
WriteLn('LIB: ', mbGetModuleName(@getrandom));
результат
LIB: /usr/lib/libc.so.6
К сожалению, для *.so получаю сообщение No version info load ((
Вот ...
- 02.08.2022 21:35:53
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
Что то вы похоже где то перемудрили, если у вас в принципе такая проблема встала.
Вы делаете библиотеку, которую использует некое стороннее приложение? Если обязательно нужно проверять версии библиотеки, что мешает добавить функцию? прямо в этой же библиотеки. Что то типа
function GetVersion ...
Вы делаете библиотеку, которую использует некое стороннее приложение? Если обязательно нужно проверять версии библиотеки, что мешает добавить функцию? прямо в этой же библиотеки. Что то типа
function GetVersion ...
- 02.08.2022 18:19:16
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
mrPG
Очень похоже, что Вы делаете проблему из пустого места. Если речь идёт о Вашей собственной библиотеке, то сделайте там функцию, которая выдаёт её версию. Это будет в высшей степени кроссплатформенный вариант.
Можете подсказать как сделать так, чтобы изменять номер версии не "ручками", а ...
Очень похоже, что Вы делаете проблему из пустого места. Если речь идёт о Вашей собственной библиотеке, то сделайте там функцию, которая выдаёт её версию. Это будет в высшей степени кроссплатформенный вариант.
Можете подсказать как сделать так, чтобы изменять номер версии не "ручками", а ...
- 02.08.2022 17:23:26
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
Под Win никакой проблемы для получения информации о загруженной dll нет, а под Linux - решения нет?
Тут проблема в том, что требуемая вам информация в файле просто-напросто отсутствует.
Впрочем в Windows для dll она тоже далеко не всегда будет... это зависит от того, добавил ли автор информацию о ...
Тут проблема в том, что требуемая вам информация в файле просто-напросто отсутствует.
Впрочем в Windows для dll она тоже далеко не всегда будет... это зависит от того, добавил ли автор информацию о ...
- 02.08.2022 00:03:49
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
Как то безрадостно((WAYFARER писал(а):Никак. Vadim все правильно говорит, только с помощью менеджера пакетов. И то не всегда...mrPG писал(а):Как получить значение FileVersion для библиотеки?
Под Win никакой проблемы для получения информации о загруженной dll нет, а под Linux - решения нет?
- 01.08.2022 16:54:02
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Re: Как получить номер версии библиотеки в Linux
Универсальный вариант (если у Вас rpm-дистрибутив):
rpm -qi libmpfr6 | grep Version
Вместо "libmpfr6" пишете правильное название нужной библиотеки.
Как запустить эту команду из своей программы:
http://freepascal.ru/article/freepascal/20191121080000/
Если следовать совету получится так ...
rpm -qi libmpfr6 | grep Version
Вместо "libmpfr6" пишете правильное название нужной библиотеки.
Как запустить эту команду из своей программы:
http://freepascal.ru/article/freepascal/20191121080000/
Если следовать совету получится так ...
- 01.08.2022 11:37:03
- Форум: Lazarus
- Тема: Как получить номер версии библиотеки в Linux
- Ответы: 17
- Просмотры: 13367
Как получить номер версии библиотеки в Linux
Есть необходимость контролировать номер версии подключаемой динамической библиотеки(*.so).
Для Win / Delphi использую GetFileVersionInfo.
В Linux для приложения номер версии получаю через TFileVersionInfo, в котором используется имя исполняемого файла из paramstr(1).
Как получить значение ...
Для Win / Delphi использую GetFileVersionInfo.
В Linux для приложения номер версии получаю через TFileVersionInfo, в котором используется имя исполняемого файла из paramstr(1).
Как получить значение ...
- 01.08.2022 11:21:00
- Форум: Lazarus
- Тема: LoadLibrary для linux
- Ответы: 3
- Просмотры: 4177
Re: LoadLibrary для linux
Спасибо.wavebvg писал(а):Попробуйте указать абсолютный путь
Так и поступил. Оказалось, что из папки с приложением без прямого указания пути библиотека не подключается.
- 25.07.2022 12:44:40
- Форум: Lazarus
- Тема: LoadLibrary для linux
- Ответы: 3
- Просмотры: 4177
LoadLibrary для linux
Создал проект с использованием динамической библиотеки(dll) под win - все работает.
Для загрузки использую LoadLibrary().
Сделал аналогичный проект под linux(ubuntu).
Но LoadLibrary возвращает нулевой Handle, при этом
- в uses dynlibs указан, компиляция без ошибок
- файл библиотеки libxxx.so ...
Для загрузки использую LoadLibrary().
Сделал аналогичный проект под linux(ubuntu).
Но LoadLibrary возвращает нулевой Handle, при этом
- в uses dynlibs указан, компиляция без ошибок
- файл библиотеки libxxx.so ...
