Vraag Hoe automatisch ontbrekende afhankelijkheden bij het installeren van software van .deb te halen? [duplicaat]


Deze vraag heeft hier al een antwoord:

Ik probeer te installeren MySQL Workbench op mijn Ubuntu-box (11.04). De website heeft een Ubuntu .deb beschikbaar om te downloaden (voor 10.10 en 10.04 dus ik koos 10.10).

Echter,

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

opbrengsten:

(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

Mijn vraag is, is er een manier om dpkg te vertellen om automatisch ontbrekende afhankelijkheden op te halen, of moet ik dit handmatig doen apt-get install ontbrekende pakketten zoals libctemplate0 en libpython2.6?

(Of is er een andere manier om MySQL Workbench gemakkelijk up & running te krijgen?)


101
2017-08-22 11:34


oorsprong


@Braiam: hoe kan deze vraag een duplicaat zijn van een vraag die drie maanden later wordt geplaatst? - enzotib
Deze vraag heeft betere antwoorden en is veel populairder van de twee, dus inderdaad de andere moet worden gemarkeerd als duplicaat hiervan. - Jonik
@Jonik Op dit moment heeft deze vraag 221.988 views en de vraag of deze is gesloten als een duplicaat van heeft 241.929 views, dus als dit de meest populaire van de twee was, is het niet meer. Wat de kwaliteit van de antwoorden betreft, zou het voldoende zijn als de antwoorden hier eenvoudig in de andere vraag worden samengevoegd? Moderators kunnen dat doen (als we ze vragen en zij zijn het daarmee eens). De antwoorden verschijnen op de andere vraag (samen met de antwoorden) in plaats van deze. Deze vraag zou nog steeds bestaan ​​en nog steeds verwijzen naar de andere vraag en mensen blijven helpen de antwoorden te vinden. Wat vind je hier van? - Eliah Kagan
Oh, het is mijn vraag van 6 jaar geleden. :) Eerlijk gezegd denk ik niet dat het er veel toe doet. Ik zou het gewoon laten zoals het is. Samenvoeging vertroebelt de wateren, omdat sommige van de antwoorden onvermijdelijk van de top raken. als jij moet doe iets, ga dan gang en doe wat verstandig lijkt. - Jonik


antwoorden:


U kunt een pakket installeren en dependencies van repositories met krijgen

sudo gdebi package.deb

Als je het pakket al hebt geïnstalleerd met gemiste afhankelijkheden, kun je afhankelijkheden automatisch downloaden en installeren met

sudo apt-get -f install

Er is ook een grafische versie beschikbaar gdebi-gtk, gekoppeld aan .deb nautilus klik met de rechtermuisknop actie "Open met GDebi Package Installer".


107
2017-08-22 12:02



Bedankt, sudo gdebi mysql-workbench-gpl-5.2.34-1ubu1010-amd64.deb werkte soepel. Het lijkt erop dat Gdebi precies het gereedschap is dat ik nodig had. - Jonik
leuke daar, thanx ;-) - Pavlos G.
Merk op dat dubbelklikken op het deb-bestand ook zou moeten werken. Het gebruikt gdebi op oudere Ubuntu-versies en het Software Center in nieuwere versies. - Javier Rivera
Om in het tweede geval hierboven te vallen: dpkg --force-depends -i some_deb_file.deb - Seamus Connor
Ouch! ik installeerde gdebi op een schone server is het ENORM. Het heeft echt heel veel afhankelijkheden ... - Alexis Wilke


dpkg zelf is niet in staat om repository's te beheren. Een tool van een hoger niveau zoals apt-get is vereist om iets van repositories op te halen. dkpg is alleen de kerngereedschap die pakketten installeert / verwijdert / configureert, zorgend voor afhankelijkheden en andere factoren. apt-get en aptitude zijn gereedschappen die repository's beheren, gegevens ervan downloaden, en gebruik  dkpg om pakketten van ze te installeren / verwijderen. Dit betekent dat apt-get en aptitude kan de afhankelijkheden oplossen en vereiste pakketten uit de repository halen, maar dpkg kan niet, omdat het weet niets over repositories.


26
2017-08-22 11:54



Goede achtergrondinformatie maar geen bruikbaar antwoord. - foraidt
Geweldig. Dus waar is de oplossing?
bedankt man, het verklaart veel - sqrt163


Vanaf de 1.1-tak, apt-get ondersteunt het installeren van lokale pakketten samen met afhankelijkheden op de manier van:

sudo apt-get install ./your-package.deb

18
2017-10-25 23:53



Dit werkt geweldig. Ik had een probleem met een libc-trigger waarvoor het .deb-bestand moest worden gelezen door de _apt-gebruiker. Houd hier dus rekening mee voordat je begint. - rjh


Je kunt gebruiken apt-get -f install om alle pakketten te installeren dpkg -i klaagt over (maar kijkend naar je vraag wist je dat waarschijnlijk;)).

gdebi misschien een beter alternatief.

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. 

Op een 3e noot ... gdebi werd vervangen door het Ubuntu Software Center. Als u de .deb installeert vanuit GDM (nautilus), neemt USC het over en probeert het te installeren deb. En dat omvat de afhankelijkheden. Dat wil zeggen als u niet gebonden bent aan de opdrachtregel;)


16
2017-11-16 07:45



Nooit gedacht apt-get -f install, bedankt! Op zoek naar commando-oplossingen, goed op de hoogte van beide gdebi en USC. - Oxwivi
Oh wacht, gdebi is command line tool. Het spijt me dit te moeten vragen, maar kun je je antwoord verwijderen? Het lijkt erop dat deze vraag een duplicaat was en ik verwijder elke dubbele vraag van mij. :) Reageer op de vraag als je dat doet. - Oxwivi


Die bepaalde bibliotheek (libctemplate0) Ik heb het gedownload van

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

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

De installatie van de mySQL-werkbank verliep daarna soepel.


6
2017-11-24 06:41





Klik met de rechtermuisknop op het pakketbestand en selecteer "openen met Ubuntu-softwarecentrum". Het installeert alles voor u.


5
2018-01-02 22:14





ZO VER IK WEET, dpkg biedt geen mechanisme voor afhankelijkheidsoplossing. Het controleert / waarschuwt voor afhankelijkheden, maar onderneemt geen verdere actie. Je zult de problemen alleen moeten oplossen.

Zoals de Debian-wiki vermeldt hier:

dpkg controleert de afhankelijkheden en weigert een pakket te installeren waarvan de afhankelijkheden niet worden voldaan, maar het zal je niet helpen om die afhankelijkheden te vinden en te installeren. Hiervoor hebt u een tool op hoger niveau nodig (bijv. Dselect of apt-get).

Dus ik denk dat je moet gebruiken apt-get of aptitude om het pakket waarin u bent geïnteresseerd te installeren, evenals eventuele afhankelijkheden.

Omdat dit pakket zich niet in de 11.04-repositories bevindt, voert u gewoon uit:

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

en je zou in orde moeten zijn.


2
2017-08-22 11:40



Lopende 11.04 ook, maar ik krijg "heeft geen installatiekandidaat" voor de meeste pakketten in je eerste apt-get. Mis ik iets? - John C