1

Здравствуйте.
Помогите разобраться со следующей проблемой.
Ставлю postgresql. При установке выдает ошибку

... зависит от libssl0.9.8 (>= 0.9.8m-1) однако: Пакет libssl0.9.8 не установлен.

В системе имеется библиотека libssl.so.1.0.0.
На сколько я понял это таже библиотека старшая на версию.

Моей идеей было сделать ссылку:

ln -s libssl.so.1.0.0 libssl.so.0.9.8

не помогло.
Подскажите, что делать в таких случаях?

2 (20.10.2012 19:04:07 отредактировано NoXi0uZ)

Прописанная зависимость не порверяет наличие либы где-либо, поэтому ссылка и не помогла.
Можно подаунгрейдить до требуемой версии. А какой пакет вам установил libssl.so.1.0.0?
dpkg-query -S на нее натравите

github.com/cocaine

3 (20.10.2012 19:05:37 отредактировано yars)

По идее, после создания симлинка нужно было еще скомандовать ldconfig от рута. Но это в Slackware, а у вас это может и не сработать. Значит, пересобирайте  (configure && make && make install DESTDIR=/tmp/package && makepkg packagename), но вот как конкретно это сделать, не скажу, потому что не знаю, что у вас за дистрибутив.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

4

У меня debian.

5

yars пишет:

По идее, после создания симлинка нужно было еще скомандовать ldconfig от рута. Но это в Slackware, а у вас это может и не сработать. Значит, пересобирайте  (configure && make && make install DESTDIR=/tmp/package && makepkg packagename), но вот как конкретно это сделать, не скажу, потому что не знаю, что у вас за дистрибутив.

Не совсем понял про пересобирать. Как указать при сборке что нужно учитывать мои установленные пакеты?

6

NoXi0uZ пишет:

Прописанная зависимость не порверяет наличие либы где-либо, поэтому ссылка и не помогла.
Можно подаунгрейдить до требуемой версии. А какой пакет вам установил libssl.so.1.0.0?
dpkg-query -S на нее натравите

Думаю libssl-dev (не знаю как проверить точно)

7 (20.10.2012 19:15:56 отредактировано NoXi0uZ)

а попробуйте сделать downgrade до 0.9.8

Я глянул на ubuntu приезжает, как не странно, с пакетом:
libssl0.9.8

dpkg-query -S libssl.so.0.9.8
libssl0.9.8: /usr/lib/libssl.so.0.9.8
libssl0.9.8: /lib/libssl.so.0.9.8

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

github.com/cocaine

8

Ой затупил.

9

dpkg-query -S
libssl1.0.0:adm64

10 (20.10.2012 19:19:13 отредактировано NoXi0uZ)

apt-get install libssl0.9.8

не поможет? Хотя должно ставиться... ибо зависимость то поставлена(

github.com/cocaine

11

NoXi0uZ пишет:

а попробуйте сделать downgrade до 0.9.8

Я глянул на ubuntu приезжает, как не странно, с пакетом:
libssl0.9.8

dpkg-query -S libssl.so.0.9.8
libssl0.9.8: /usr/lib/libssl.so.0.9.8
libssl0.9.8: /lib/libssl.so.0.9.8

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

downgrade - это на сколько я понимаю поставить старую версия?

12

NoXi0uZ пишет:

apt-get install libssl0.9.8

не поможет? Хотя должно ставиться... ибо зависимость то поставлена(

В репозиториях нет такого пакета. (debian weezy)

13

Только 1.0.0

14 (20.10.2012 19:34:14 отредактировано NoXi0uZ)

нууу давайте смотреть, что не так. Поищите в /var/lib/dpkg/status пакет libssl.

например так:

grep -A 10 "Package: libssl" /var/lib/dpkg/status

Посмотрим, что за версию он провайдит

github.com/cocaine

15

Package: libssl1.0.0
Status: install ok installed
Priority: important
Section: libs
Installed-Size: 2951
Maintainer: Debian OpenSSL Team <pkg-openssl-devel@lists.alioth.debian.org>
Architecture: amd64
Multi-Arch: same
Source: openssl
Version: 1.0.1c-4
Depends: libc6 (>= 2.7), zlib1g (>= 1:1.1.4), debconf (>= 0.5) | debconf-2.0
Pre-Depends: multiarch-support
Description: SSL shared libraries
libssl and libcrypto shared libraries needed by programs like
apache-ssl, telnet-ssl and openssh.

16

Потенциально деструктивное действие можно попробовать совершить - поменяв версию в status. Ну скопировать его предваительно только. Такая хурма бывает например с порприетарной фигней аля oracle. Ну и вроде бы есть еще флажок, позволяющий ставить пакет игнорируя сломаные depends - можно попробовать.

github.com/cocaine

17

Как-то можно проверить работоспособность проблемного пакета? Или только время покажет?

18 (20.10.2012 19:51:00 отредактировано yars)

_MSga пишет:

Как указать при сборке что нужно учитывать мои установленные пакеты?

Для начала прочтите, как собирать программы из исходников, а так же документацию по Autoconf.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

19

Всем большое спасибо.

20 (20.10.2012 20:05:04 отредактировано NoXi0uZ)

Помогло? А кстати я так и не понял причем здесь сборка из исходников? Разговор ведь был про установку пакета?

github.com/cocaine

21

Пакет установился. Запускается. Проверяю сейчас....

22

NoXi0uZ пишет:

А кстати я так и не понял причем здесь сборка из исходников? Разговор ведь был про установку пакета?

Разговор про то, что Postgre требует libssl, который стареее уже установленного. Вообще, Debian (как уже не раз говорилось) - это бесспорный рекордсмен по количеству готовых пакетов, но здесь это не поможет - разве что найдется версия Postgre, которая скомпилирована с новой версией libssl. Потому, если пакета не существует, выход один - собрать.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

23

yars пишет:
NoXi0uZ пишет:

А кстати я так и не понял причем здесь сборка из исходников? Разговор ведь был про установку пакета?

Разговор про то, что Postgre требует libssl, который стареее уже установленного. Вообще, Debian (как уже не раз говорилось) - это бесспорный рекордсмен по количеству готовых пакетов, но здесь это не поможет - разве что найдется версия Postgre, которая скомпилирована с новой версией libssl. Потому, если пакета не существует, выход один - собрать.

Подскажите как при сборке пакета PostgreSQL можно указать свою версию libssl?

24

Существуют в Slackware 2 переменные окружения, которые могут помочь в этом - LD_LIBRARY_PATH и PKG_CONFIG_PATH Запуская скрипт configure следующим образом:

LD_LIBRARY_PATH=/opt/lib \
PKG_CONFIG_PATH=/opt/lib/pkgconfig \
./configure

мы получим то, что хотим. Но, это может быть реализовано другим способом - поэтому будет по меньшей мере, невредно сначала почитать хотя бы вывод ./configure --help. Кроме того, вовсе не факт, что вам именно этой библиотеки не хватает. Все зависит от реализации скрипта configure. В этом случае нужно знать, как организована сборка программ из исходников.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

25 (31.10.2012 00:53:00 отредактировано NoXi0uZ)

А вы из чего пакет собирать будете? У вас есть возможност ьскачать source пакет? Вообще при сборке deb пакета есть такие файлы:
debian/rules и debian/control

В control указаны зависимости для сборки и зависимости для установки:

Source: sourcename
Section: misc
Priority: extra
Maintainer: me <me@tttt.ru>
Build-Depends: debhelper (>= 7)
Standards-Version: 3.8.3
Homepage: http://ttttttttttt.ru

Package: package
Architecture: amd64
Depends: ${shlibs:Depends}, ${misc:Depends}, python-pymongo
Description: description

Вы при сборке своего пакета сможете тут прописать необходимые версии. Файл rules представляет из себя собсвенно makefile сборки пакета, там и надо будет указать параметры сборки из сорцов, включая, напрмер, версию библиотеки. Типо  -l  ssl1.0.0

github.com/cocaine

26

а я сделал гоораздо глупее... я просто добавил репозиторий предыдущего релиза...

    deb http://ftp.us.debian.org/debian/ squeeze main non-free contrib
    deb-src http://ftp.us.debian.org/debian/ squeeze main non-free contrib

27

dumaxa пишет:

а я сделал гоораздо глупее... я просто добавил репозиторий предыдущего релиза...

    deb http://ftp.us.debian.org/debian/ squeeze main non-free contrib
    deb-src http://ftp.us.debian.org/debian/ squeeze main non-free contrib

Это действительно неумно, т.к. позже при очередном обновлении могут возникнуть
проблемы, которые вы не будете знать, как разрешить.

Пётр.

Пётр.

28

_MSga пишет:

Здравствуйте.
Помогите разобраться со следующей проблемой.
Ставлю postgresql. При установке выдает ошибку

... зависит от libssl0.9.8 (>= 0.9.8m-1) однако: Пакет libssl0.9.8 не установлен.

В системе имеется библиотека libssl.so.1.0.0.
На сколько я понял это таже библиотека старшая на версию.

Моей идеей было сделать ссылку:

ln -s libssl.so.1.0.0 libssl.so.0.9.8

не помогло.
Подскажите, что делать в таких случаях?

Попробуй apt-get -f install