Как найти пакет Fedora, предоставляющий нужную мне зависимость?

Как найти пакет Fedora, предоставляющий нужную мне зависимость?

Иногда я устанавливаю программное обеспечение, которого нет в репозиториях, и тогда я сталкиваюсь с проблемой неудовлетворенных зависимостей. Ошибка обычно сообщает мне, какая библиотека или команда отсутствует. Затем я запускаю yum search. Если есть имя пакета, совпадающее с именем нужной библиотеки/команды, это просто.

Проблема возникает, когда я не могу ничего найти в yum. Я начинаю искать в Интернете и часто нахожу ссылки на библиотеку. Но я не знаю, доверять ли этим сайтам, куда копировать библиотеку, если я ее скачаю, что она вообще должна делать и т. д. Часто предполагается, что она для другого дистрибутива или другой версии Fedora, и тогда я не знаю, будут ли они работать с моей. Я подозреваю, что эти библиотеки, вероятно, присутствуют в каком-то пакете, уже в репозитории, и я бы предпочел получить их оттуда, чем со случайных сайтов, найденных в Google.

Как узнать, к какому пакету относится библиотека, если у меня есть ее название? Например, сейчас мне нужна библиотека libpng12.so.0, как ее получить? А если это не библиотека, а команда, как найти пакет, который ее предоставляет?

решение1

Поскольку библиотеки «автоматически предоставляются» rpmbuild:

yum whatprovides libpng12.so.0

Если это не принесет результата, значит, ни один пакет в Fedora его не предоставляет, и вам придется обратиться к тому, кто разработал программное обеспечение.

решение2

Если вы хотите удовлетворить зависимости, то вы можете найти нужное вам приложение в менеджере Synaptic, а затем проверить его и установить. Или, если вы хотите сохранить производительность и сделать это в командной строке, то используйте:

sudo yum "пакет1" "зависимость1" "зависимость2" ...

Замените текст в кавычках именем пакета или зависимости.

решение3

Из всех моих поисков в Fedora... иногда я нахожу их здесь (см. ссылку ниже). Например, libpng15, который содержит libpng15.so.15

http://archive.fedoraproject.org/pub/fedora/linux/releases/20/Everything/i386/os/Packages/l/

Затем вы скачиваете и rpm -i

Связанный контент