Я пытаюсь сделать переносное приложение Linux, где все необходимые библиотеки включены в папку.
Но если я просто поместил их в папку рядом с исполняемыми файлами, он не сможет найти библиотеки.
Как я могу отправить приложение, содержащее все необходимые библиотеки в одной папке?положить библиотеки в папку exe в Linux
0
A
ответ
0
Я пытаюсь сделать переносное приложение Linux, где все необходимые библиотеки включены в папку.
Что вы ищете - это двоичный код с RPATH
, который содержит $ORIGIN
. Например, создать свой бинарный код:
gcc -o myexe main.o ... '-Wl,-rpath=$ORIGIN/'
(примечание: одиночные кавычки требуется.) Приведет к myexe
ищет совместно используемые библиотеки в том же каталоге, в котором был найден сам двоичный файл.
Поиск 'LD_LIBRARY_PATH'. –
да, но я должен был установить его для каждого ПК, на котором я хотел бы запустить приложение. разве это не так? – user2741831
_ «нет ли здесь пути?» _ Нет. Я знаю. –