[devel] HDF5: not yet set-versioned
Dmitry V. Levin
ldv на altlinux.org
Вт Окт 26 16:39:04 UTC 2010
On Tue, Oct 26, 2010 at 05:42:02PM +0800, REAL wrote:
> Dmitry V. Levin пишет:
> >Эти библиотеки упакованы весьма
> >нестандартным образом, и,
> >соответственно,
> >для их обработки требуется весьма
> >нестандартный подход. Сейчас, насколько
> >я понимаю, lib.prov эти файлы, упакованные в
> >/usr/lib/hdf5-*/lib/libhdf5.so.6, просто игнорирует,
>
> А можно добиться, чтобы не игнорировал? И
> что лично мне для этого нужно сделать?
lib.prov обрабатывает только те файлы, которые видит ldconfig.
И %add_findprov_lib_path в данном случае не поможет.
Так что положите ваши разделяемые библиотеки в %_libdir/
Ну или хотя бы призрачные ссылки на библиотеки:
%ghost %_libdir/lib*.so.*
> >а provides вида
> >libhdf5.so.6()(64bit) выставлены вручную. Ну что
> >же, вы можете и
> >set-versioned provides выставить вручную, конечно,
> >но я бы вам этого
> >не советовал делать.
>
> Я и сам себе не советую :-D
> Хотя мысль была.
>
> А вообще странно, что для
> библиотек-альтернатив не работает тот же
> механизм lib.prov, что и для обычных
> библиотек. Вроде бы логично пройтись до
> реального файла на основе ссылки на
> альтернативу.
Механизм альтернатив не вполне применим к разделяемым библиотекам.
Если две реализации одного soname отличаются по списку экспортируемых
символов, то клиент этой библиотеки, будучи слинкованным с одной
реализацией, может даже не запускаться с другой. Механизм альтернатив
обманет не ld.so, а пользователя, у которого может оказаться нерабочий
клиент с удовлетворенными зависимостями, т.е. то самое, с чем мы боремся
с помощью set-versioned dependencies. Так что лучше сделать
альтернативные разделяемые библиотеки конфликтующими.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 198 байтов
Описание: отсутствует
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20101026/653b7328/attachment.bin>
Подробная информация о списке рассылки Devel