Come recuperare automaticamente le dipendenze mancanti durante l'installazione del software da .deb? [duplicare]

100
    

Questa domanda ha già una risposta qui:

    
  •              Come consentire a 'dpkg -i' di installare le dipendenze per me?                                      10 risposte                          
  •     

Sto cercando di installare MySQL Workbench sulla mia scatola Ubuntu (11.04). Il sito web ha un Ubuntu .deb disponibile per il download (per 10.10 e 10.04 quindi ho scelto 10.10).

Tuttavia,

sudo dpkg -i mysql-workbench-gpl-5.2.34-1ubu1010-amd64.deb

rendimenti:

(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 unconfigured
Processing 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

La mia domanda è, c'è un modo per dire a dpkg di recuperare automaticamente le dipendenze mancanti , o devo manualmente apt-get install di pacchetti mancanti come libctemplate0 e libpython2.6?

(O in alternativa, c'è un altro modo per far funzionare MySQL Workbench facilmente e in esecuzione?)

    
posta Jonik 22.08.2011 - 13:34

7 risposte

106

Puoi installare un pacchetto e ottenere le dipendenze dai repository con

sudo gdebi package.deb

Se hai già installato il pacchetto con dipendenze mancanti, puoi scaricare e installare automaticamente le dipendenze con

sudo apt-get -f install

È disponibile anche una versione grafica gdebi-gtk , collegata a .deb nautilus con l'azione del tasto destro "Apri con GDebi Package Installer".

    
risposta data enzotib 22.08.2011 - 14:02
25

dpkg stesso non è in grado di gestire i repository . È necessario uno strumento di livello superiore come apt-get per prelevare qualsiasi cosa dai repository. dkpg è solo lo strumento principale che installa / rimuove / configura i pacchetti, avendo cura delle dipendenze e di altri fattori. apt-get e aptitude sono strumenti che gestiscono gli archivi, scaricano dati da loro e usano dkpg per installare / rimuovere pacchetti da essi. Ciò significa che apt-get e aptitude possono risolvere le dipendenze e ottenere i pacchetti richiesti dal repository, ma dpkg non può, perché conosce niente sui repository.

    
risposta data Rafał Cieślak 22.08.2011 - 13:54
18

Dal ramo 1.1 in poi, apt-get supporta l'installazione di pacchetti locali insieme alle dipendenze nel modo di:

sudo apt-get install ./your-package.deb
    
risposta data Braiam 26.10.2014 - 01:53
16

Puoi usare apt-get -f install per installare tutti i pacchetti di dpkg -i lamentati (ma guardando la tua domanda probabilmente lo sapevi;)).

gdebi potrebbe essere un'alternativa migliore.

Description: Simple tool to install deb files
gdebi lets you install local deb packages resolving and installing its 
dependencies. apt does the same, but only for remote (http, ftp) located 
packages. 

In una terza nota ... gdebi è stato sostituito da Ubuntu Software Center. Se installi il .deb da GDM (nautilus) USC prenderà il controllo e tenterà di installare deb . E questo include le dipendenze. Questo è se non sei legato alla riga di comando;)

    
risposta data Rinzwind 16.11.2011 - 08:45
6

Quella particolare libreria ( libctemplate0 ) l'ho scaricata da

http://packages.ubuntu.com/lucid/amd64/libctemplate0/download

Il link diretto http://ubuntu.wikimedia.org/ubuntu//pool/universe/c/ctemplate/libctemplate0_0.96-0ubuntu1_amd64.deb

L'installazione di mySQL-workbench è andata avanti senza intoppi.

    
risposta data mv288 24.11.2012 - 07:41
5

Fai clic con il tasto destro del mouse sul file del pacchetto e seleziona "apri con il centro software Ubuntu". Installerà tutto per te.

    
risposta data user118263 02.01.2013 - 23:14
2

AFAIK, dpkg non fornisce alcun meccanismo per la risoluzione delle dipendenze. Controlla / avverte le dipendenze, ma non esegue ulteriori azioni. Dovrai risolvere i problemi da solo.

Come il wiki di Debian afferma qui :

  

dpkg verifica le dipendenze e rifiuta di installare un pacchetto le cui dipendenze non sono soddisfatte, ma non ti aiuterà a trovare e installare tali dipendenze. Hai bisogno di uno strumento di livello superiore (ad esempio dselect o apt-get) per questo .

Quindi penso che dovrai utilizzare apt-get o aptitude per installare il pacchetto che ti interessa, oltre a tutte le dipendenze coinvolte.

Poiché questo pacchetto non si trova nei repository 11.04, esegui semplicemente:

sudo apt-get install libctemplate0 libzip1 libpython2.6 python-pysqlite2 python-paramiko
sudo dpkg -i mysql-workbench-gpl-5.2.34-1ubu1010-amd64.deb

e dovresti essere ok.

    
risposta data Pavlos G. 22.08.2011 - 13:40

Leggi altre domande sui tag