[sisyphus] .la files
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Чт Дек 4 15:10:58 MSK 2003
On Wed, Dec 03, 2003 at 09:27:32PM +0600, Alexey Morozov wrote:
> On Tue, Dec 02, 2003 at 01:03:25PM +0300, Dmitry V. Levin wrote:
> > > про wrapper scripts. У меня есть софт, который этой libtool'овой
> > > функциональностью пользуется. Как предлагается обходить эти грабли?
> > Вообще-то по окончании пересборки Сизифа от никаких граблей не
> > предвидится.
> Да? Насколько я понимаю, .la вычищаются отовсюду, да? Даже там, где
> описываются модули, как, например, в libgnomeprint2-2.4.2-alt1
> (проапдейчен сегодня)?
>
> Если проведенный мной простой тест (см. например, autobook) верен, то
> конструкция
>
> lt_dlopenext("somemodule");
>
> перестает работать, если удалить соответствующие .la-файлы. То есть,
> конечно,
>
> lt_dlopenext("somemodule.so");
>
> работает по-прежнему, но тогда приходится указывать точное имя (то есть,
> с префиксом somemodule_LTX_) для каждой функции, вызываемой из этого
> модуля, что несколько, э-э-э, неудобно и противоречит самой идее
> загружаемых модулей с единым интерфейсом.
Если это так, то можно пропатчить lt_dlopenext, чтобы
lt_dlopenext("somemodule");
не переставал работать.
> То есть, я так понимаю, практика огульного убивания .la файлов просто
> приведет к тому, что понадобится капитально патчить приложения, которым
> вздумалось попользоваться плагинами (а именно, вталкивать руками в каждое
> из приложений функциональность, похороненную в ltdl).
Нет.
> С другой стороны, практика НЕубивания .la для плагинов - тоже довольно
> чревата, т.к. очень часто плагины линкуются к материнской библиотеке
> (н-р, как те же самые плагины из libgnomeprint2), причем, линкуются они,
> опять-таки, через материнский .la-файл. Потом если кому-нибудь приспичит
> жестко прилинковаться к данному плагину (идея вообще плохая, но мало
> ли), то этот кто-то будет пренеприятно удивлен незамкнутостью
> дистрибутивных пакетов.
Почему?
Во-первых, libtool сам линкует плагины со всеми библиотеками, которые
указаны в dependency_libs.
Во-вторых, зачем линковаться с плагинами - они ведь не рассчитаны на такое
использование.
> Итого, сухой остаток: нынешняя политика в отношении .la файлов в Сизифе
> - НЕКОРРЕКТНА, т.к. напрямую противоречит документации.
Какой такой документации?
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/sisyphus/attachments/20031204/64d0e70a/attachment-0019.bin>
Подробная информация о списке рассылки Sisyphus