Für ein Build-Tool, das ich schreibe (für das ich eine Art Abhängigkeits-Caching-System implementieren möchte), möchte ich wissen, welche Abhängigkeiten für ein .deb-Paket fehlen.ohneindem Sie es (möglicherweise) installieren und die Ausgabe von apt-get lesen, z. B.:Ich muss es nicht-interaktiv in einer Software tun können, es ist nichts, was ein Mensch tun sollte
Das manuelle Verfahren sähe etwa so aus:
dpkg -i something.deb || true
apt-get -f install
An diesem Punkt gibt apt etwa Folgendes aus:
The following extra packages will be installed:
ca-certificates git git-man krb5-locales libasn1-8-heimdal libcurl3-gnutls
libedit2 liberror-perl libgssapi-krb5-2 libgssapi3-heimdal
libhcrypto4-heimdal libheimbase1-heimdal libheimntlm0-heimdal
libhx509-5-heimdal libidn11 libk5crypto3 libkeyutils1 libkrb5-26-heimdal
libkrb5-3 libkrb5support0 libldap-2.4-2 libroken18-heimdal librtmp0
libruby1.9.1 libsasl2-2 libsasl2-modules libsasl2-modules-db
libwind0-heimdal libx11-6 libx11-data libxau6 libxcb1 libxdmcp6 libxext6
libxmuu1 libyaml-0-2 openssh-client openssl patch rsync ruby ruby1.9.1 xauth
Ich möchte eine solche Liste zuverlässig erhaltenohne Installationdie .deb (möglicherweise, weil ich das Paket nach der Installation entfernen kann und immerhin ein System wie vorher habe), aber vor allemohne die apt-get-Ausgabe für die Paketliste manuell und interaktiv analysieren zu müssen.
Ich kann apt-get, apt-cache, aptitude oder jedes andere in Debian und/oder Ubuntu verfügbare Paket zum Ausführen solcher Aufgaben verwenden.
Antwort1
dpkg -I package.deb
Der Befehl zeigt Paketinformationen an. Sie finden Abhängigkeiten in.