On Thu, Nov 13, 2003 at 06:59:05PM +0300, Alexey Tourbin wrote: > Иными словами, buildreq считает, что пакет basename-чтоугодно должен > обязательно зависеть от basename. Однако (в данном случае) это не так. > > $ rpm -q --requires ruby-stdlibs | grep ruby > libruby = 1.8-alt9 > libruby.so.1.8 > $ > > Я уже предлагал автору packagereq усложнить алгоритм для "усечения" > сборочных зависимостей, чтобы этот алгоритм был основан на анализе > зависимостей между пакетами. Надеюсь, что в ближайшее время мне удастся > подготовить формальное описание этого алгоритма. Вот как должен работать правильный алгоритм (демо-версия): $ perl rpm.pl libruby libruby-devel ruby ruby-stdlibs ruby-stdlibs requires libruby.so.1.8 provided by libruby libruby optimized out ruby requires ruby-stdlibs provided by ruby-stdlibs ruby-stdlibs optimized out result: ruby libruby-devel $ Иными словами, из 4 пакетов (перечисленных в командной строке) остается только два; причем buildreq вычисляет другой (неправильный) список. Описание и реализацию я постараюсь предоставить в выходные.