
Используется Ubuntu 12.04 LTS 64bit. Хост находится в автономном режиме и по необходимости должен оставаться в таком состоянии.
Мне нужно установить odbc для взаимодействия с удаленной базой данных из приложения C++, работающего в системе.
Я загрузил все пакеты, необходимые для «libmyodbc», и перенес их в систему:
mysql-common_5.5.44-0ubuntu0.12.04.1_all.deb '
libmysqlclient18_5.5.44-0ubuntu0.12.04.1_amd64.deb
libodbc1_2.2.14p2-5ubuntu3_amd64.deb
odbcinst1debian2_2.2.14p2-5ubuntu3_amd64.deb
odbcinst_2.2.14p2-5ubuntu3_amd64.deb
libmyodbc_5.1.10-1_amd64.deb'
Я устанавливаю с помощью dpkg -i, но при попытке установить obcinst*.deb и odbcinst1debian2*.deb возникает конфликт:
Selecting previously unselected package odbcinst.
(Reading database ... 203584 files and directories currently installed.)
Unpacking odbcinst (from odbcinst_2.2.14p2-5ubuntu3_amd64.deb) ...
dpkg: dependency problems prevent configuration of odbcinst:
odbcinst depends on odbcinst1debian2 (>= 2.2.14p2); however:
Package odbcinst1debian2 is not configured yet.
Такodbcinstне могу установить, потому что odbcinst1debian2 не установлен. Поэтому я пытаюсь установить odbcinst1debian2 и получаю:
Selecting previously unselected package odbcinst1debian2.
(Reading database ... 203563 files and directories currently installed.)
Unpacking odbcinst1debian2 (from odbcinst1debian2_2.2.14p2-5ubuntu3_amd64.deb) ...
dpkg: dependency problems prevent configuration of odbcinst1debian2:
odbcinst1debian2 depends on odbcinst; however:
Package odbcinst is not installed.
Такodbcinst1debian2не могу установить, так как odbcinst не установлен... Я проверил сайт Ubuntu, и там показано, что эти библиотеки зависят друг от друга... http://packages.ubuntu.com/precise/odbcinst
Кроме того, я нашел это обсуждение Стива Лангасека (создателя пакета odbc) по поводу этой циклической зависимости, датированное 2009 годом: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=545861
Стив утверждает, что «dpkg знает, что с ними делать»… но, похоже, он не способен решить эту проблему.
Кто-нибудь знает, как установить пакеты через «dpkg», которые зависят друг от друга?
Есть ли лучший способ сделать это (т. е. следует ли мне использовать unixodbc)?
решение1
Установите оба deb-пакета одновременно.
Перейдите в папку загрузки odbcinst1debian2_2.2.14p2-5ubuntu3_amd64.deb
и odbcinst_2.2.14p2-5ubuntu3_amd64.deb
установите через
sudo dpkg -i odbcinst*
или через
sudo dpkg -i odbcinst1debian2_2.2.14p2-5ubuntu3_amd64.deb odbcinst_2.2.14p2-5ubuntu3_amd64.deb
Или измените зависимости в одном из deb-файлов, как описаноздесь.