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

9

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

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

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

rumtscho
источник

Ответы:

11

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

yum whatprovides libpng12.so.0

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

Игнасио Васкес-Абрамс
источник
1

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

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

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

Пранит Баува
источник
Программное обеспечение, которое я устанавливаю, вообще отсутствует в репозиториях, поэтому репозиторий не знает, какие зависимости ему нужны.
rumtscho
@Ignacio Васкес-Абрамс: федора имеет синаптический. Вы можете установить его: «sudo yum synaptic». без кавычек.
Пранит Баува
@rumtscho: Вы можете добавить репозиторий в свою систему, чтобы он мог получать зависимости или пакеты по этой ссылке.
Пранит Баува
Во-первых, я не хочу добавлять слишком много репозиториев помимо официальных. Во-вторых, мне не известны никакие репозитории, содержащие программы, которые я устанавливаю. Их авторы предлагают их только в виде двоичных файлов.
rumtscho
0

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

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

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

GuestGuy273
источник
2
Любой найденный пакет http://archive.fedoraproject.orgможно будет установить через yum(если он доступен для вашей версии Fedora), поэтому нет необходимости искать на сайте и загружать его вручную.
DRS