[devel] symbols into dependencies

Stanislav Ievlev stanislav.ievlev at gmail.com
Mon Nov 16 08:16:39 UTC 2009


Возможно эта схема и не очень удобна для бинарных библиотек, но зато
,как мне кажется, подошла бы для RPC подобных систем типа DBUS.

16 ноября 2009 г. 0:14 пользователь Alexey Tourbin <at �� altlinux.ru> написал:
> On Sun, Nov 15, 2009 at 10:00:02PM +0200, Led wrote:
>> "Точечные обновления" могут "гарантированно ломаються" даже со всеми
>> предлагаемыми костылями и зоопарком libfooN (где N - разные циферки). Пример:
>>
>> app собран с libfoo.so.1.0, соответственно слинкован с libfoo.so.1 и имеет
>> зависимость на  libfoo.so.1
>>
>> далее, появляется libfoo.so.1.1 (полностью обратно совместимая с
>> libfoo.so.1.0).
>>
>> далее, появляется новый app, собран с libfoo.so.1.1, соответственно слинкован
>> с libfoo.so.1 и имеет зависимость на  libfoo.so.1
>>
>> далее появляетесь вы, делаете "точечное обновление" app - всё отлично
>> обновляется.
>>
>> запускаете app - упс! "неизвестный символ". app "упало" :(
>>
>> SharedLibsPolicy в таком случае - никак не помогает :(
>
> Есть идея формировать зависимости на сонеймы с учетом символов.
> Это может выглядеть так:
>
>        %package -n libfoo
>        Provides(auto): libfoo.so.1 = set:0123abcd...(очень длинная строка)
>
>        %package -n foo
>        Requires(auto): libfoo.so.1 >= set:abcd0123...(умеренно длинная строка)
>
> То есть реализовать зависимости специального вида, которые представляют
> собой "множество строк" (символов).  Вместо обычного сравнения версий
> для таких зависимостей будет выполняться проверка, что requires set
> является подмножеством provides set.
>
> _______________________________________________
> Devel mailing list
> Devel �� lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
>


More information about the Devel mailing list