[devel] Проблема при обновлении пакета , в котором сменился soname
Sergey Vlasov
=?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Вт Май 16 15:46:31 MSD 2006
On Tue, May 16, 2006 at 03:24:42PM +0400, Vitaly Lipatov wrote:
> В пакете сначала была версия so.1 (ссылка на so.1.1.0),
> а в новой сборке версия изменилась (so.1 стало указывать
> на so.1.0.0).
Вообще-то как раз soname в данном случае не менялось, а вот изменение
версии выглядит весьма странно. Downgrade? Или кто-то наконец научился
пользоваться libtool?
Надо бы внимательно исследовать этот вопрос - возможно, это ошибка в
upstream, тогда лучше исправить её, чтобы получить правильную версию, а не
вставлять костыли в спек.
> При обновлении такого пакета получается битая ссылка (so.1 продолжает
> указывать на so.1.1.0, тогда как должна на so.1.0.0).
ldconfig при наличии нескольких библиотек с одинаковым soname выбирает из
них библиотеку с наибольшей версией. В данном случае это правило даёт
неверный результат.
> Что-то не так, а что - не понимаю. Подскажите пожалуйста.
>
> ldconfig вроде обычным образом вызывается:
> %post
> %post_ldconfig
>
> %postun
> %postun_ldconfig
Во время выполнения %postun файлы предыдущих версий пакета ещё не удалены,
а в данном случае ldconfig выбирает библиотеку из старой версии.
Можно добавить %triggerpostun на предыдущие версии пакета, в котором ещё
раз вызвать %postun_ldconfig; при этом ссылка будет исправлена, но между
удалением старых файлов и выполнением %triggerpostun будет промежуток
времени, когда ссылка будет указывать на несуществующий файл.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/20060516/d5daa834/attachment-0001.bin>
Подробная информация о списке рассылки Devel