Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Установка двух версий библиотек одновременно  (Прочитано 16186 раз)
0 Пользователей и 1 Гость смотрят эту тему.
RuNTiME
Помогающий

ru
Offline Offline
Пол: Мужской

« : 06-04-2009 06:46 » 

в общем проблема в следующем, есть некая программа которая требует библиотеку libreadline версии 4, на машине стоит версия 5 и программа естественно не ставиться. При попытке установить 4 версию библиотеки, система предлагает снести 5ю версию, которая используется кучей других программ... Хотелось бы узнать, как поставить 4 версию совместно с 5той.

Система: Fedora 10
Ядро: 2.6.27.5-117.fc10.i686
Записан

Любимая игрушка - debugger ...
Chuda
Гость
« Ответ #1 : 06-04-2009 08:05 » 

вручную, наплевав на зависимости.
Хотя это и доставит море головной боли в дальнейшем.
Такой подход широко применялся (может и сейчас применяется, не знаю) в Linux XP Улыбаюсь
Записан
McZim
Модератор

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #2 : 06-04-2009 08:38 » 

Не вручную впихивать не нужно, а то потом замучаешься, для начала просто попробуй сделать симлинк.
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 06-04-2009 08:47 » 

Попробуй вызывать rpm с флагам:
Код:
  --nodeps                         do not verify package dependencies
или
  --force                          short hand for --replacepkgs --replacefiles
или и с тем и другим...
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #4 : 06-04-2009 11:51 » 

В общем, ставить (не upgrade!) надо с --nodeps, а потом проверить симлинки и руками подправить если не так.
Например:

libXXX.so -> libXXX.so.2
libXXX.so.2
libXXX.so.3

Нужно переправить линк libXXX.so на основную библиотеку. После этого запустить ldconfig - он обновит кеш библиотек.

Если требуются девелоперские библиотеки, то положить их где-нибудь руками (чтобы не конфликтовали), а при сборке руками (точнее через переменные окружения) указать положение заголовков и линкуемых библиотек.
« Последнее редактирование: 06-04-2009 11:53 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
RuNTiME
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 06-04-2009 14:49 » 

Всем спасибо за советы! Но библиотеку так и не получилось зарегистрировать в системе, я руками распаковал rpm и копирнул библиотеку в /usr/lib и сделал руками ссылки.... затем запустил ldconfig. Но все равно при установке программы не проходит зависимости по этой библиотеке. Я нашел новую версию программы, которая использует уже новую библиотеку.

Теперь проблема другая, программе нужна Fierbird, пытаюсь ставить в зависимостях compat-libstdc++ 5...  почему - то она не ставиться через yum install compat-libstdc++  Улыбаюсь
Записан

Любимая игрушка - debugger ...
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 06-04-2009 17:44 » 

RuNTiME, трудно сказать, почему оно не ставиться. Улыбаюсь Ты скажи какие ошибки выдает yum.
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #7 : 06-04-2009 18:08 » 

RuNTiME, если библиотека подложена руками, а не установлена через rpm, то rpm-пакеты ее видеть не будут. Они сверяются не с существующими файлами, а с базой rpm (/var/lib/rpm/).

Ставь библиотеку с --nodeps. Для осторожности проверяй с --test — при этом будут только проверки, без копирования файлов.

После установки rpm -q <packagename> выдаст все версии данного пакета. Например:

Код:
# rpm -q kernel
kernel-2.6.18-92.el5
kernel-2.6.18-92.1.22.el5
kernel-2.6.18-128.1.6.el5
« Последнее редактирование: 06-04-2009 18:11 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
RuNTiME
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 08-04-2009 06:22 » 

Serg79, через yum не ставится, пишет что такого пакета нет. Я уже поставил этот пакет, через стандартный установщик пакетов gpk Улыбаюсь
Записан

Любимая игрушка - debugger ...
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #9 : 08-04-2009 06:35 » 

Так в Fedore стандартный установщик yum, который прикручен поверх rpm. Улыбаюсь А gpk это что такое ? Улыбаюсь
Для yum-a наверно дополнительные репозитарии не настроены.
Записан
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #10 : 08-04-2009 06:51 » 

RuNTiME, а ты уверен, что у тебя Fedora???

Fedora - это RedHat и использует только rpm-пакеты и соотв. утилиты.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
RuNTiME
Помогающий

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 08-04-2009 10:33 » 

А gpk это что такое ? Улыбаюсь
Я имел ввиду gpk-application, GUI установщик пакетов Улыбаюсь может он и через yum работает, я незнаю...
недавно сел на nix системы....

RXL, ну конечно я уверен что у меня федора Улыбаюсь
Записан

Любимая игрушка - debugger ...
RXL
Технический
Администратор

Offline Offline
Пол: Мужской

WWW
« Ответ #12 : 08-04-2009 12:53 » new

RuNTiME, понятно.
Рекомендую изучить командную строку - это мощнейший инструмент, позволяющий не зависеть от наличия нужных GUI программ.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines