Herauszufinden, welche Pakete installiert werden müssen, um Abhängigkeiten zu erfüllen, ist keine exakte Wissenschaft. Aber es gibt einige Tipps, die Ihnen helfen könnten:
- Wenn Sie mit zufriedenstellenden Abhängigkeiten arbeiten, um etwas zu kompilieren, möchten Sie fast immer das Paket, das auf
-devendet . Das ist die Abkürzung für Entwicklung. Beispiel:opensslPaket enthält Befehlszeilentools und Bibliotheken für die Arbeit mit Verschlüsselung.libssl-deventhält Header-Dateien und Bibliotheken für die OpenSSL-Entwicklung. - Um mit apt nach einem Paket nach Schlüsselwörtern zu suchen, verwenden Sie
apt-cache search. Zum Beispiel wusste ich nicht wirklich, dass libssl-dev der Name des openssl-Entwicklungspakets war. Ich habe das mit diesem Befehl gefunden:apt-cache search openssl | grep devund dann mit derjenigen, die nicht mit einer anderen Sprache/Bibliothek verwandt zu sein schien. - Mit
dpkg -lkönnen Sie sehen, welche Pakete Sie installiert haben , aber im Allgemeinen suchen Sie einfach das gewünschte Paket und sagen Sie apt, dass es installiert werden soll. Wenn Sie es bereits haben, wird apt es Ihnen mitteilen. Ein weiterer guter Tipp ist, wenn Sie wissen möchten, welchem Paket eine Datei gehört, verwenden Siedpkg -S /path/to/thefile - Wenn Sie am Ende ein Paket aus dem Quellcode erstellen müssen, gibt es keine einfache Möglichkeit, den Abhängigkeitsbaum aufzulösen.
./configuresollte Ihnen sagen, oder die README-Datei. Oft nennen sie sogar genau das benötigte Paket. - Um herauszufinden, was verlinkt werden soll, bezieht sich das normalerweise auf den Namen des Pakets oder den allgemeinsten Namen für das, was Sie wollen. Für unser libssl-Beispiel würden Sie einfach
-lsslübergeben zu gcc. Wenn Sie die Optionen für-lnicht kennen sind, werfen Sie einen Blick in /lib/ (entfernen Sie einfach das "lib" von vorne und das ".so..." von hinten, um die 'Mitte' zu erhalten, die an gcc übergeben wird).
Niemand erwähnt
aptitude build-dep
Der Manpage-Eintrag ist ziemlich umfangreich.