Я пытаюсь установить MySQL Workbench на моем ящике Ubuntu (11.04). На веб-сайте есть Ubuntu .deb доступен для скачивания (для 10.10 и 10.04, поэтому я выбрал 10.10).
(Reading database ... 194069 files and directories currently installed.)Preparing to replace mysql-workbench-gpl 5.2.34-1ubu1010 (using mysql-workbench-gpl-5.2.34-1ubu1010-amd64.deb) ...Unpacking replacement mysql-workbench-gpl ...dpkg: dependency problems prevent configuration of mysql-workbench-gpl: mysql-workbench-gpl depends on libctemplate0; however: Package libctemplate0 is not installed. mysql-workbench-gpl depends on libpython2.6 (>= 2.6); however: Package libpython2.6 is not installed. mysql-workbench-gpl depends on libzip1 (>= 0.8); however: Package libzip1 is not installed. mysql-workbench-gpl depends on python-paramiko; however: Package python-paramiko is not installed. mysql-workbench-gpl depends on python-pysqlite2; however: Package python-pysqlite2 is not installed.dpkg: error processing mysql-workbench-gpl (--install): dependency problems - leaving unconfiguredProcessing triggers for bamfdaemon ...Rebuilding /usr/share/applications/bamf.index...Processing triggers for desktop-file-utils ...Processing triggers for python-gmenu ...Rebuilding /usr/share/applications/desktop.en_US.utf8.cache...Processing triggers for python-support ...Errors were encountered while processing: mysql-workbench-gpl
Мой вопрос заключается в следующем, есть ли способ указать dpkg автоматически извлекать недостающие зависимости, или мне нужно вручную apt-get install отсутствуют такие пакеты, как libctemplate0 и libpython2.6?
(Или, в качестве альтернативы, есть ли какой-то другой способ легко запустить MySQL Workbench?)
Вы можете установить пакет и получить зависимости из репозиториев с помощью
sudo gdebi package.deb
Если вы уже установили пакет с пропущенными зависимостями, вы можете автоматически загружать и устанавливать зависимости с помощью
sudo apt-get -f install
Также доступна графическая версия gdebi-gtk, связанный с .deb nautilus щелкните правой кнопкой мыши действие "Открыть с помощью установщика пакетов GDebi".
Начиная с ветки 1.1 и далее, apt-get поддерживает установку локальных пакетов вместе с зависимостями в виде:
sudo apt-get install ./your-package.deb
Обратите внимание на ./ перед именем файла пакета, которое является обязательным, в противном случае имя будет использоваться как имя пакета, а не как имя файла.
dpkg сам не способен управлять репозиториями. Инструмент более высокого уровня, такой как apt-get требуется для извлечения чего-либо из репозиториев. dkpg является лишь основной инструмент который устанавливает /удаляет/настраивает пакеты, заботясь о зависимостях и других факторах. apt-get и aptitude это инструменты, которые управляют репозиториями, загружают из них данные и использоватьdkpg для установки/ удаления пакетов из них. Это означает, что apt-get и aptitude может разрешать зависимости и получать необходимые пакеты из репозитория, но dpkg не может, потому что знает ничего о репозиториях.
Вы можете использовать apt-get -f install для установки всех пакетов dpkg -i жалуется на (но, глядя на ваш вопрос, вы, вероятно, знали это ;) ).
gdebi может быть, это лучшая альтернатива.
Description: Simple tool to install deb filesgdebi lets you install local deb packages resolving and installing its dependencies. apt does the same, but only for remote (http, ftp) located packages.
На 3-й ноте... gdebi был заменен Центром программного обеспечения Ubuntu. Если вы установите .deb из GDM (nautilus), USC возьмет на себя управление и попытается установить deb. И это включает в себя зависимости. То есть, если вы не привязаны к командной строке ;)
АФАИК, dpkg не предоставляет механизма для разрешения зависимостей. Он проверяет / предупреждает о наличии зависимостей, но не выполняет никаких дальнейших действий. Вам придется решать проблемы самостоятельно.
dpkg проверяет зависимости и откажется устанавливать пакет, зависимости которого не выполняются, но это не поможет вам найти и установить эти зависимости. Для этого вам нужен инструмент более высокого уровня (например, dselect или apt-get)..
Поэтому я думаю, что вам придется использовать apt-get или aptitude для того, чтобы установить интересующий вас пакет, а также любые связанные с ним зависимости.
Поскольку этого пакета нет в репозиториях 11.04, просто запустите:
@Jonik Прямо сейчас этот вопрос имеет 221 988 просмотров, а вопрос, который он закрыл как дубликат, имеет 241 929 просмотров, так что если когда-то он был более популярным из двух, то теперь его нет. Что касается качества ответов, будет ли достаточно, чтобы ответы здесь просто были объединены в другой вопрос? Модераторы могут это сделать (если мы попросим их и они согласятся). Ответы появятся на другой вопрос (вместе с ответами на него), а не на этот. Этот вопрос все еще существовал бы и по-прежнему был бы связан с другим вопросом и продолжал бы помогать людям находить ответы. Что вы об этом думаете?
О, это мой вопрос 6-летней давности. Честно говоря, я не думаю, что это имеет большое значение. Я бы просто оставил все как есть. Слияние мутит воду, поскольку некоторые ответы неизбежно становятся оффтопическими. Если вы * должны * что-то сделать, тогда идите вперед и делайте то, что кажется разумным.