Wie installiere ich Tarball-Pakete auf einer Debian-basierten Distribution?

19

Ich möchte wissen, wie man die Pakete .tar.bz und .tar.bz2 unter Debian installiert, bitte geben Sie mir eine vollständige Erklärung.

Zignd
quelle
2
Das sind Archive. Sie müssen sie auspacken und Anweisungen finden Sie im Inneren. Normalerweise ist es ./configure, make, make install, aber ich bin sicher , dass jemand eine bessere Antwort auf die Sie wird, mit Links , wo Sie diese sehr grundlegende Dinge lernen können , bevor Sie tatsächlich versuchen zu bauen alles
zetah
3
Je nachdem, was Sie installieren möchten, müssen Sie auch die Pakete build-essential und -dev der Bibliotheken installieren, die von der Software verwendet werden. Stellen Sie sicher, dass Sie das Präfix / usr / local / (normalerweise die Standardeinstellung) installieren, da Sie sonst möglicherweise Ihr System beschädigen. Für Anfänger empfehle ich dringend, sich auf die verfügbaren Pakete von Debian zu beschränken. Der nächste Schritt wäre, nach bereits gepackter Software (.deb-Pakete) zu suchen und diese dann manuell zu installieren dpkg -i ./path/to/package.deb. Die Verwendung von .tar. {Gz, bz2} -Paketen ist die letzte und schwierigste Option.
Jofel
@jofel Ich stimme Ihnen zu, aber einige Programme sind in einem .deb-Paket nicht verfügbar und Sie können es nur aus dem Quellcode installieren (z. B. Firefox).
Zignd 30.10.12
1
Firefox ist definitiv in den Repositories verfügbar und muss selten aus dem Quellcode erstellt werden.
Dämon des Chaos
1
Wenn Sie manuell aus Quellen installieren möchten, ist es häufig am schwierigsten, die richtigen Abhängigkeiten zu installieren. Wenn README oder INSTALL sie nicht auflistet, müssen Sie möglicherweise das Skript ./configure manuell ausführen (für autoconf-basierte Build-Systeme). Wenn die Prüfung auf xyz: Nein, xyz nicht gefunden oder ähnliches fehlschlägt, installieren Sie das Paket libxyz-dev (auf Debian-basierten Systemen) und versuchen Sie es erneut. Wenn das Paket nicht vorhanden ist, müssen Sie entweder das richtige Paket finden oder die benötigte Bibliothek zuerst manuell installieren. Manchmal müssen Sie eine bestimmte Bibliotheksversion auswählen.
Jofel

Antworten:

30

Erstens sollte gemäß den Standards für die Dateisystemhierarchie der Speicherort dieses installierten Pakets sein, /optwenn es sich um eine Binärinstallation handelt und /usr/localwenn es sich um eine Quellinstallation handelt.

Reine Binärdateien

Diese sind bereit, Binärdateien zu verwenden. Normalerweise müssen sie nur extrahiert werden, um installiert zu werden. Ein Binärpaket wird einfach sein:

  • sudo tar --directory=/opt -xvf <file>.tar.[bz2|gz]
  • Fügen Sie das Verzeichnis Ihrem Pfad hinzu: export PATH=$PATH:/opt/[package_name]/bin

und du bist fertig.

Aus Quellen

Ein Quellpaket wird (bei weitem) problematischer und kann mit der folgenden Methode grob verarbeitet werden. Jedes Paket ist anders :

  • Laden Sie das Paket auf herunter /usr/local/src
  • tar xf <file>.tar.[bz2|gz]
  • cd <package name>
  • Lesen Sie die READMEDatei (dies ist mit ziemlicher Sicherheit vorhanden).
  • Die meisten Open Source Projekte verwenden autoconf / automake, die Anweisungen sollten in der sein README. Wahrscheinlich wird dieser Schritt gehen: ./configure && make && make install(Führe die Befehle separat aus Gründen der Vernunft aus, wenn etwas schief geht).

Wenn bei der Installation Probleme auftreten, müssen Sie bestimmte Fragen stellen. Möglicherweise haben Sie Probleme mit falschen Bibliotheksversionen oder fehlenden Abhängigkeiten. Es gibt einen Grund, warum Debian alles für Sie paketiert. Und es gibt einen Grund, warum Debian Stable alte Pakete ausführt - es ist schwierig, alle Eckfälle für die Installation von Paketen auf mehr als einem Dutzend verschiedenen Architekturen und unzähligen verschiedenen Hardware- / Systemkonfigurationen zu finden. Wenn Sie selbst etwas installieren, kann eines dieser Probleme auftreten!

Dave
quelle
2
Ich habe den Befehl tar einfacher gemacht! Sie müssen nicht CD / Opt. Wechseln Sie stattdessen zum Speicherort des Tarballs und verwenden Sie die Option tar -Coder --directory.
Jess
1
Ah und vergiss nicht sudo: D
Jess
10

Entpacken Sie die Dateien und suchen Sie in dem Verzeichnis, das erstellt wurde, nach einer READMEoder INSTALL-Datei, die Ihnen sagt, was Sie wissen müssen, um ein Paket zu installieren (z. B. Abhängigkeiten, Konfigurationsoptionen, auszuführende Befehle usw.).

Normalerweise kocht es auf ./configure, makedann make install.

Renan
quelle
3
Beachten Sie, dass der Build in configure höchstwahrscheinlich fehlschlagen wird. Warum? Da die heruntergeladene Quelle wahrscheinlich Build-Zeit-Abhängigkeiten aufweist, die Sie nicht installiert haben. Wenn das Paket unter Debian / Ubuntu auch mit apt verfügbar ist, können Sie diese mit folgendem
Befehl
7

Die Standardmethode hierfür ist:

  1. tar zxvf file.tar.gz oder tar xvjpf file.tar.bz2
  2. run ./configure ( ./configure --helpgibt normalerweise Anpassungsoptionen)
  3. Lauf make
  4. Lauf make install

Normalerweise gibt es eine README- oder INSTALL-Datei, die auch Anweisungen enthält.

Bigdaveyl
quelle
5

Wenn Sie tar.gz / tgz / tar / bz2 installieren (denken Sie daran, dies sind nur komprimierte Paketdateien), müssen Sie im Allgemeinen die tar-Datei ( tar xvfz/ tar xvfj) aufbrechen und dann cdin das Verzeichnis wechseln und ausführen ./configure.

Auf einigen Systemen verwenden Sie entweder die Standardeinstellungen (z. B. / usr / local / {lib, bin, etc ...}) als Standardinstallationsverzeichnis, oder Sie möchten möglicherweise / opt / local / {lib, bin, etc}.

Also würden Sie tun , ./configure --prefix=/usr/localund dann make, make install.

Es liegt an Ihnen, wo Sie Ihre Pakete installieren möchten. Denken Sie daran, dass Sie bei jeder Entscheidung den Pfad zu Ihrer PATH-Shell-Variablen hinzufügen möchten, damit Sie diese Pakete problemlos ausführen können. (oft export PATH=$PATH:/opt/local/bin:/usr/local/bin).

Mark Cohen
quelle
2

Lassen Sie mich dies anhand eines Beispiels veranschaulichen. Angenommen, Sie möchten ein Paket installieren abc. Die Abhängigkeiten des Pakets abckönnen durch Lesen seiner Dokumentation identifiziert werden. Sie sollten die Abhängigkeiten (erforderliche Bibliotheken usw.) vor der Installation auflösen, um einen reibungslosen Ablauf zu gewährleisten.

Vor einem gcc 4.7.2Build der g++, m4, gawk, gcc-multilib, gmp, mpfr, und mpcmüssen gebaut werden.

Dann kommt das Gebäude aus dem Quellteil, für das der erste Schritt immer die Extraktion ist. Dies kann mithilfe des tarBefehls oder auf einfache Weise über die grafische Benutzeroberfläche erfolgen. Sobald Sie die extrahierten Dateien in einem Ordner haben, müssen Sie mit dem cdBefehl zu diesem Ordner navigieren. Befinden sich die Inhalte beispielsweise in Downloads, gehen Sie wie folgt vor:

$cd Downloads/abc

Jetzt musst du rennen ./configure. Geben Sie das Installationsverzeichnis an, indem Sie die --prefix=Option mit verwenden configure.

Erstens sollte gemäß den Standards für die Dateisystemhierarchie der Speicherort dieses installierten Pakets / opt sein, wenn es sich um eine Binärinstallation handelt, und / usr / local, wenn es sich um eine Installation von der Quelle handelt.

Wenn Sie also in das /usr/abcVerzeichnis installieren, geben Sie die Option zusammen --prefix=/usr/abcmit der ./configureAnweisung an.

$./configure --prefix=/usr/abc

--prefix=Dies ist jedoch möglicherweise nicht das Einzige, das Sie angeben möchten. Möglicherweise möchten Sie auch andere Informationen für eine erfolgreiche Kompilierung bereitstellen, --build=x86_64-linux-gnuz. B. den Systemtyp für 64-Bit- Systeme und --build=i386-linux-gnufür 32-Bit-Systeme. Es ist ratsam, die README-Datei in den extrahierten Dateien zu lesen, da sie möglicherweise Informationen darüber enthält, welche Optionen mit dem ./configureBefehl angegeben werden sollen.

Nach dem ./configureAusführen des makeBefehls und anschließend des Befehls make install. Nach der Installation sollten Sie den Bibliothekspfad und die Shell- / Umgebungsvariablen mit dem exportBefehl angeben .

export PATH=/usr/abc/bin:$PATH
Ballistisch
quelle