[fedora core3] dependencies

krishtaf

Ставлю приложение и появляется ошибка:
ошибка: Неудовлетворенные зависимости:
liblber.so.2 нужен для ...
libldap.so.2 нужен для ...
libstdc++.so.5 нужен для ...
libstdc++.so.5(CXXABI_1.2) нужен для ...
libstdc++.so.5(GLIBCPP_3.2) нужен для ...
libstdc++.so.5(GLIBCPP_3.2.2) нужен для ...
Как нужно ковырять ldconfig чтобы все поставилось ?
Указанные библиотеки присутствуют в /usr/lib и являются симлинками на другие файлы.

Marinavo_0507

Эти зависимости проверяются по базе rpm.
Чтобы их удовлетворить, нужно поставить пакеты с нужными библиотеками.
Если у тебя в /usr/lib файлы есть, а в базе rpm про них ничего нет, то скорее всего ты
поставил библиотеки не из пакетов, а как-то ещё.
ldconfig тут не поможет, разбираться нужно с rpm.

ruler

Ты неправильно поставил приложение. Когда ставишь через rpm -i, он тебе расскажет, какие еще пакеты надо доставить.

krishtaf

Я может неправильно ситуацию обрисовал, поэтому обьясняю еще раз:
Что было до установки приложения:
1.

lrwxrwxrwx 1 root root 20 Янв 12 23:06 liblber-2.2.so.7 -> liblber-2.2.so.7.0.6
-rwxr-xr-x 1 root root 48560 Авг 20 05:26 liblber-2.2.so.7.0.6
-rw-r--r-- 1 root root 75466 Авг 20 05:26 liblber.a
lrwxrwxrwx 1 root root 20 Янв 12 23:15 liblber.so -> liblber-2.2.so.7.0.6

2.

lrwxrwxrwx 1 root root 20 Янв 12 23:06 libldap-2.2.so.7 -> libldap-2.2.so.7.0.6
-rwxr-xr-x 1 root root 202976 Авг 20 05:26 libldap-2.2.so.7.0.6
-rw-r--r-- 1 root root 324722 Авг 20 05:26 libldap.a
lrwxrwxrwx 1 root root 22 Янв 12 23:06 libldap_r-2.2.so.7 -> libldap_r-2.2.so.7.0.6
-rwxr-xr-x 1 root root 214000 Авг 20 05:26 libldap_r-2.2.so.7.0.6
-rw-r--r-- 1 root root 355812 Авг 20 05:26 libldap_r.a
lrwxrwxrwx 1 root root 22 Янв 12 23:15 libldap_r.so -> libldap_r-2.2.so.7.0.6
lrwxrwxrwx 1 root root 20 Янв 12 23:15 libldap.so -> libldap-2.2.so.7.0.6
3.

lrwxrwxrwx 1 root root 18 Янв 12 23:04 libstdc++.so.6 -> libstdc++.so.6.0.3
-rwxr-xr-x 1 root root 811744 Окт 26 12:48 libstdc++.so.6.0.3
Пытаюсь ставить приложение. Появляется приведенная выше ошибка.
Добавляю:

lrwxrwxrwx 1 root root 20 Янв 16 19:06 liblber.so.2 -> liblber-2.2.so.7.0.6
lrwxrwxrwx 1 root root 20 Янв 16 19:07 libldap.so.2 -> libldap-2.2.so.7.0.6
lrwxrwxrwx 1 root root 18 Янв 16 19:08 libstdc++.so.5 -> libstdc++.so.6.0.3
Перегружаюсь и ничего не меняется: ошибка не исправляется.
Как все-таки установить ?
P.S.
По косвенным признакам я понял, что
liblber.so.XXX, libldap.so.XXX из пакета openldap-2.2.13-2
libstdc++.so.XXX из пакета libstdc++-3.4.2-6.fc3
Кто подскажет как правильно узнавать какой файл из какого rpm ?

IvladV71

>Как все-таки установить ?
попробуй --nodeps
или из сырцов (что в общем правильней)

ruler

У него и получается nodeps

ruler

Как ты устанавливал пакет?

Marinavo_0507

> Я может неправильно ситуацию обрисовал.
Да нет, всё правильно.
> Пытаюсь ставить приложение. Появляется приведенная выше ошибка.
В базе rpm нет упоминания о нужных пакету библиотеках.
> Перегружаюсь и ничего не меняется: ошибка не исправляется.
Ничего удивительного - при перезагрузке содержимое базы rpm не меняется.
> Как все-таки установить ?
Удовлетворить зависимости.
> Кто подскажет как правильно узнавать какой файл из какого rpm ?
Не я

krishtaf

Как ты устанавливал пакет?
какой из ?

krishtaf

> Как все-таки установить ?
Удовлетворить зависимости.
давай подробнее

ruler

Post deleted by

krishtaf

rpm -ivh <sfsdfsdfsfdslkjlfkjglkfjgkljfk>.rpm

Marinavo_0507

Удовлетворить зависимости - значит поставить пакеты, содержащие нужные библиотеки.

krishtaf

т.е. поставить старые версии уже установленных пакетов ?

ruler

А пакет точно из нужного дистрибутива?
Такое может быть, если rpm'ка левая.

duantusova

в fedore есть пакет compat-stdc++ и так далее. Его нужно поставить.

krishtaf

выяснил, что нужные библиотеки есть в пакетах от fedore core2
т.е. нужны поставить старые версии уже установленных пакетов.
Вопрос такой: как наебать систему и не ставить старые версии пакетов ?

duantusova

Вот так он полностью называется:
compat-libstdc++-8-3.3.4.2.i386.rpm

Marinavo_0507

> Вопрос такой: как наебать систему и не ставить старые версии пакетов ?
Прекратить наконец наёбывать нас, и объяснить, что ты хочешь на самом деле.
С указанием имён.

duantusova

Для ldap тоже пакет есть со старыми версиями
compat-openldap-2.1.30-2.i386.rpm
Если файла не хватает какого-либо, конечно, лучше пользоваться надстройкой над rpm, имеющей базу зависимостей. yum из федоры прямо или apt. Или для крайнего случая есть такой хороший сайт rpm.pbone.net там можно rpm по имени файла искать.

krishtaf

ёбанарот
спасибо тебе помог
Кто же знал что их так обзовут
compat-libstdc++-8-3.3.4.2.i386.rpm
compat-openldap-2.1.30-2.i386.rpm
и почему они по умолчанию не ставятся ?

krishtaf

кстати вопрос по теме:
как раздраконить rpm пакет, чтобы вытащить нужный файлик ?

Marinavo_0507

rpm2cpio
а то и mc

krishtaf

а так можно ? :
rpm -i --prefix=/my/path pakage.rpm
или
rpm -i --badreloc --relocate default-path=/my/path pakage.rpm
P.S.
вроде пробовал так но почему то не получилось.
Правда пытался так поставить старую версию уже установленного пакета, соответственно наверно нужно было --force использовать.

shlyumper

а так можно ? :
rpm -i --prefix=/my/path pakage.rpm
или
rpm -i --badreloc --relocate default-path=/my/path pakage.rpm
Нет, так не можно. Это не эквивалентно действию "распаковать архив чтобы выдернуть файл", это вызывает очень много лишних действий. Кроме того, это работает только если пакет полностью relocatable. Я понимаю, что man cpio - это очень страшный man. rpm2tgz
P.S.
вроде пробовал так но почему то не получилось.
Далеко не все пакеты relocatable полностью.

krishtaf

Я понимаю, что man cpio - это очень страшный man.
не сцать, пользоваться cpio не проблема
Далеко не все пакеты relocatable полностью.
--badreloc разве это не решает ?!

shlyumper

Нет, не решает. Полностью это решает только --root, одновременно принося свою порцию гемороя (фактически --root просто делает chroot в самом начале работы. как результат - то место, куда ты делаешь --root должно, например, иметь свои независимые базы данных rpm).
Оставить комментарий
Имя или ник:
Комментарий: