Из-за того, что некоторые устаревшие 32-битные библиотеки используются в функциях postgresql, мне нужно установить 32-битную версию Postgresql на 64-битной собственной системе. Но кажется, что есть проблема с мультиархом, который не видит all.debs как удовлетворяющий зависимости.
uname -a
:
3.8.0-29-generic #42-precise-Ubuntu SMP x86_64
dpkg --print-architecture
:
amd64
dpkg --print-foreign-architecture
:
i386
apt-get install postgresql-9.1
:
postgresql : Depends: postgresql-9.1 but it is nto going to be installed
postgresql-9.1:i386 : Depends: postgresql-common:i386 but it is not installable
Depends: ssl-cert:i386 but it is not installable
Depends: locales:i386 but it is not installable
и т. Д.
Но я установил ssl-cert_1.0.28ubuntu0.1_all.deb
и locales_..._all.deb
, а postgresql-common
- это all.deb
У кого-нибудь есть опыт установки 32-битных пакетов в 64-битных системах, которые зависят от пакетов all.debs.
Или кто-нибудь установил 32-битный postgres
на 64-битный? Любая помощь приветствуется.
Не могу не установить i386 postgresql (попробуйте процедуры пакета более низкого уровня), но вам все равно придется добавить еще 3 библиотеки, не включенные в библиотеки ia32:
$ ldd /mnt/sda1/usr/lib/postgresql/9.1/bin/* | fgrep found |sort -u
libedit.so.2 => not found
libpam.so.0 => not found
libpq.so.5 => not found
(из 12.04 64-битная система с ia32libs и multiarch, смотря на смонтированный 32-битный корневой раздел 12.04).
Чтобы установить 32-разрядные пакеты на 64-разрядные, необходимо выполнить следующее: sudo apt-get install ia32-libs -y
. В Ubuntu 13.10 больше нет необходимости делать это.