2015-05-30 4 views
0

Я пытаюсь сделать переносное приложение Linux, где все необходимые библиотеки включены в папку.
Но если я просто поместил их в папку рядом с исполняемыми файлами, он не сможет найти библиотеки.
Как я могу отправить приложение, содержащее все необходимые библиотеки в одной папке?положить библиотеки в папку exe в Linux

+1

Поиск 'LD_LIBRARY_PATH'. –

+0

да, но я должен был установить его для каждого ПК, на котором я хотел бы запустить приложение. разве это не так? – user2741831

+0

_ «нет ли здесь пути?» _ Нет. Я знаю. –

ответ

0

Я пытаюсь сделать переносное приложение Linux, где все необходимые библиотеки включены в папку.

Что вы ищете - это двоичный код с RPATH, который содержит $ORIGIN. Например, создать свой бинарный код:

gcc -o myexe main.o ... '-Wl,-rpath=$ORIGIN/' 

(примечание: одиночные кавычки требуется.) Приведет к myexe ищет совместно используемые библиотеки в том же каталоге, в котором был найден сам двоичный файл.