Добрый день.
Подскажите как настроить проект так, чтобы библиотеки под Linux брались из папки с программой, а не только из usr/lib?
Модератор: Модераторы
ya_vanka писал(а):Добрый день.
Подскажите как настроить проект так, чтобы библиотеки под Linux брались из папки с программой, а не только из usr/lib?
libname := ExtractFilePath(Application.ExeName) + DirectorySeparator + 'milib.so';
pupsik писал(а):Не помню: когда появилось такое явление. Но : DynLibs.LoadLibrary('путь/*.so'); вроде нормально подгружает библиотеки.
uses
DynLibs, FileUtil;
function LoadMyLib(const LibName: string): TLibHandle;
var
FullLibName: string;
begin
//Библиотека должна лежать рядом с выполняемым файлом
//Здесь вычисляется полный путь к ней, LibName имя библиотеки.
FullLibName := ExtractFilePath(Application.ExeName) + DirectorySeparator + LibName;
if FileExistsUTF8(FullLibName) then
Result := LoadLibrary(FullLibName) //Ищем либу в папке с программой
else //Если либы в папке с программой нет, то
Result := LoadLibrary(LibName); //Пытаемся загрузить из системного каталога
end;
ya_vanka писал(а):Да, меня интересует статическая загрузка библиотек.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 225