[devel] Re: Как заставить прогу тайти билиотеку?

Alexey Lubimov =?iso-8859-1?q?avl_=CE=C1_l14=2Eru?=
Вт Мар 9 20:37:53 MSK 2004


Alexey Tourbin пишет:
> On Tue, Mar 09, 2004 at 06:52:53PM +0300, Алексей Любимов wrote:
> 
>>Да это как раз понятно. Под чрутом все прозрачно получается, но больно 
>>много тащить приходиться...
>>Ктож знал, что файл ld-2.3.2.so в переменной LD_LIBRARY_PATH может 
>>каталогом прикидываться?
> 
> 
> Вы ничего не поняли. :(
> Файл ld-2.3.2.so не в переменной LD_LIBRARY_PATH (и уж тем более не
> прикидывается каталогом), файл ld-2.3.2.so -- это сам executable.
> В качестве параметра он берет динамический бинарь и его аргументы.
> 
> $ /lib/ld-linux.so.2 /bin/date
> Tue Mar  9 19:40:40 MSK 2004
> $
> 
> Это стандартный способ запуска динамических бинарей (с помощью
> динамического линкера).  Просто в нормальной ситуации /lib/ld-linux.so.2
> прозрачно подгружается ядром (execve), и ему передается управление.
> А откуда ядро знает, какой линкер подгружать?  А из самого бинаря:
> 
> $ strings /bin/date | head -1
> /lib/ld-linux.so.2
> $


здесь у меня был пробел в знаниях...

> 
> Поэтому его и нельзя подменить с помощью LD_LIBRARY_PATH: эта переменная
> влияет на сам линкер, который должен быть к тому моменту уже загружен.
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Devel mailing list
> Devel на altlinux.ru
> http://www.altlinux.ru/mailman/listinfo/devel


Заработало!
Даст бог, так и кады закрытые под альтлинуксом пойдут...






Подробная информация о списке рассылки Devel