[devel] Re: Как заставить прогу тайти билиотеку?
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Мар 9 19:49:56 MSK 2004
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: эта переменная
влияет на сам линкер, который должен быть к тому моменту уже загружен.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20040309/28e06b8e/attachment-0001.bin>
Подробная информация о списке рассылки Devel