On Sun, Jan 11, 2004 at 08:23:29AM +0600, Alexey Morozov wrote: > On Sun, Jan 11, 2004 at 01:23:11AM +0300, Mikhail Zabaluev wrote: [...] > 5. После обнаружения .la-файла, оригинальный (неправленный Альтом) libtool > использует информацию из dependency_libs для рекурсивного разворачивания > цепочки зависимостей библиотек до самого низа. При этом очевидно, что > при некоторых условиях возможна ситуация, когда одновременно линкеру > передаются две версии одной и той же библиотеки (н-р, libdb4.x :-)). Аналогичная история с libpng была удостоена упоминания в fortunes-ALT. > Это, как справедливо отметил Дмитрий Левин, чревато всякими "Ужасными > Последствиями" для базы rpm, в частности. (В скобках замечу, что > многообразие libdb лично у меня вызывает довольно негативную реакцию. > С другой стороны, по опыту KSI знаю, что приведение системы в консистентное > состояние в данном вопросе приводит к массе усилий, больше напоминающих > войну с ветряными мельницами. Зато некоторое время "Все Правильно" :-)) Да, по поводу многобез^H^H^Hобразия libdb грустят все вендоры, ибо хорошего решения пока не найдено. [...] > 9. Сейчас Дмитрием предложена схема, когда .la-файлы сохраняются, однако > информация о dependency_libs из них [как правило] удаляется, а в случае > необходимости (для статических сборок, н-р), насчитывает на основании > зависимостей динамических аналогов статических библиотек. Нет, я не это предлагал. Если пренебречь проблемой 7.2 (в реальности которой я не уверен), и ограничиться решением проблем 7.1 и 7.3 (которые возникают после удаления системных .la-файлов к разделяемым библиотекам), то .la-файлы к разделяемым библиотекам можно восстанавливать по самим разделяемым библиотекам. Это даёт возможность либо паковать эти .la-файлы отдельно, либо не паковать вообще, а воссоздавать отдельно, либо по мере надобности, либо автоматически по окончании установки пакетов, вызывающих /sbin/ldconfig. -- ldv