на главнуюВсе эхи RU.LINUX.CHAINIK
войти ?

LBRARY_PATH ATH & init.d $ glibc

От Maxim Gribanov (2:5064/56) к Eugene Lamskoy

В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)


Привет, Eugene!

20 мар 19 13:26, Eugene Lamskoy -> Maxim Gribanov:


EL> Hello Maxim!

EL> 19 мар 19 10:34, you wrote to all:

MG>> Друзья, подскажите как сделать: Мне нужно запустить прогу, она
MG>> адекватно работает под glibc 2.10 не старше, пересобирать не
MG>> предлагать. Закрытое ПО. Запускаю так:
MG>> LD_LIBRARY_PATH=/opt/xxx/glibc(путь к libc2.10)
MG>> /opt/xxx/glibc/ld-linux.so.2 /opt/xxx(путь к проге) - Все
MG>> работает.

MG>> Hо как мне прописать сий сценарий в init.d скрипте?

MG>> LD_LIBRARY_PATH="/opt/xxx/glibc-2.10.1:$LD_LIBRARY_PATH"
MG>> LD_LIBRARY_PATH="/opt/xxx/glibc-2.10.1/ld-linux.so.2:$LD_LIBRARY_
MG>> PATH" export LD_LIBRARY_PATH

MG>> Hе помогает... ((

EL> Попробуй LD_PRELOAD вместо LD_LIBRARY_PATH

EL> LD_PRELOAD=/opt/some/lib.so /some/bin

Была бы какая то друга либо вопросов бы не было, но это glibc

Здесь сначала устанавливается переменная окружения LD_LIBRARY_PATH=/opt/xxx/glibc-2.10.1, которая говорит, что библиотеки должны искаться в папке /opt/xxx/glibc-2.10.1. Затем запускается динамический загрузчик ld-linux.so.2(из этой же версии glibc) , который загружает программу вместе с необходимыми ей библиотеками.

LD_LIBRARY_PATH=/opt/xxx/glibc-2.10.1 /opt/xxx/glibc/ld-linux.so.2 /opt/xxx/(путь к проге) Запукает нормально.
Также работает вариант /opt/xxx/glibc-2.10.1/ld-linux.so.2 --library-path /opt/xxx/glibc-2.10.1 /opt/xxx/путь к проге, в этом варианте вызывается динамический загрузчик ld-linux.so.2 (из glibc2.10.1) и ему укахывается путь к либам (glibc2.10.1)

По сути одно и тоже. Примера для делаю скрипт с содержимым:

#! /bin/bash
LD_LIBRARY_PATH=/opt/xxx/glibc-2.10.1 /opt/xxx/glibc-2.10.1/ld-linux.so.2 /opt/xxx/bin/xxx

Запускаю все работает как надо, но в идеале хотелось бы написать полноценный init.d скрипт с возможностью запуска, остановки и пр.

Если же делаю такой скрипт: (запускаю прогу отдельной строкой)
#! /bin/bash
LD_LIBRARY_PATH=/opt/xxx/glibc-2.10.1 /opt/xxx/glibc-2.10.1/ld-linux.so.2
/opt/xxx/bin/xxx

Терплю фиаско. Как мне поступть?

С наилучшими пожеланиями, Maxim.

--- -Пиши, старик, пиши! Мы тебя не покинем.
* Origin: Hеужели опять: яйца всмятку, котлеты, цыплята? (2:5064/56)

Ответы на это письмо:

From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку

From: Username
Или коротким

FGHI-url этого письма: area://RU.LINUX.CHAINIK?msgid=2:5064/56+5c923713