GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Grundlagen zum Kompilieren von Software aus dem Quellcode unter Linux

Von Zeit zu Zeit möchten oder müssen Sie möglicherweise eine Software/ein Programm aus dem Quellcode kompilieren. Dies beinhaltet das Kompilieren von C- oder C++-Code in etwas, das wir unter Linux ausführen können. Abhängig von der Software, die Sie kompilieren möchten, ist dies oft nicht erforderlich. Dies liegt daran, dass Ihre Distribution wahrscheinlich bereits die binäre Form des Programms in den Software-Repositories hat.

Tatsächlich sollten Sie die Binärpakete dem Kompilieren aus der Quelle vorziehen. Ein Grund ist, dass es möglicherweise Probleme für Ihr System verursachen könnte. Sollte jedoch jemals die Zeit kommen, in der Sie aus dem Quellcode kompilieren müssen, gibt Ihnen diese Anleitung einige grundlegende Hinweise.

Ein typisches Beispiel

Nehmen wir ein Programm, das entweder in C oder C++ geschrieben ist. Das Herunterladen des Quellcodes beinhaltet oft entweder das Herunterladen und Entpacken eines Pakets (oft ein Tarball) oder das Klonen eines Git-Repositorys. Die typische Arbeitsweise ist die Ausführung dieser drei Befehle:$

./configure
$ make
$ sudo make install 

Der erste Befehl führt das Konfigurationsskript aus, das die auf Ihrem System installierten Bibliotheken analysiert. Wenn eine erforderliche Bibliothek nicht installiert ist, wird sie gemeldet und Sie müssen sie installieren. Sie müssen nicht nur die Bibliothek installieren, sondern auch die Entwicklungsdateien müssen vorhanden sein. Quellcodedateien verwenden die Funktionalität dieser Bibliotheken.

Nachdem der Befehl configure ausgeführt wurde, sollte ein Makefile vorhanden sein. Durch Ausführen von „make“ wird das Makefile im aktuellen Verzeichnis gelesen und der Compiler (gcc für C oder g++ für C++) ausgeführt, um die Software zu kompilieren.

Der dritte Befehl ist nicht unbedingt erforderlich, wird jedoch für den systemweiten Zugriff empfohlen, d. h. das Ausführen der ausführbaren Datei von überall im Terminal. Dieser Befehl weist ‚make‘ an, Anweisungen zur Installation des Programms auf dem System auszuführen.

Die INSTALL- oder README-Dateien

Möglicherweise müssen zusätzliche Anweisungen ausgeführt werden, bevor mit dem Kompilieren begonnen werden kann. Das Lesen dieser Datei (normalerweise INSTALL) sollte auch zeigen, welche Entwicklungsbibliotheken möglicherweise zuerst installiert werden müssen. Solche Pakete enthalten das Suffix „-dev“, um anzuzeigen, dass dies die Entwicklungsheader sind und installiert werden müssen. Das Konfigurationsskript kann auch zusätzliche Parameter erfordern. README enthält alle anderen Informationen.

Möglicherweise stellen Sie sogar fest, dass während des gesamten Vorgangs keiner der drei Befehle ausgeführt wird. Sogar Variationen von make wie qmake (für Qt-Projekte) oder cmake könnten stattdessen verwendet werden.

Installieren Sie ein GitHub-Programm

Beginnen wir mit der Installation eines Texteditors namens wxMEdit, der auf GitHub zu finden ist. Hier zeige ich, wie man ein Programm durch Kompilieren aus dem Quellcode installiert. Dies ist ein fast typisches Beispiel für den Umfang dieses Leitfadens. Wenn Sie das GitHub-Repository besuchen, werden Sie sehen, dass die Readme-Datei Details zur Anwendung enthält. Es gibt keine Kompilierungsanweisungen, daher gilt die Standardsequenz mit einem Unterschied: autogen.sh.

​Zunächst wechseln wir zu dem Ort, an dem wir das Repository im Terminal speichern möchten, und klonen es:

$ cd wherever
$ git clone git://github.com/wxMEdit/wxMEdit.git   

Autogen.sh

Wenn Sie diese Datei im Quellcode finden, sollten Sie diese zuerst vor „./configure“ ausführen, da dies Aufgaben ausführt, mit denen Sie die Software erfolgreich kompilieren können. Wenn das erfolgreich ist, können Sie „./configure“, „make“ und dann „sudo make install“ und alles andere ausführen, was Sie ausführen müssen (in diesem Fall nichts anderes).

$ ./autogen.sh 
$ ./configure 
$ make 

Sie sollten keine Fehler in der Make-Ausgabe sehen.

$ sudo make install 

Fehlerbehebung

Wenn Sie dies regelmäßig tun, werden Sie beim Kompilieren aus dem Quellcode zwangsläufig auf bestimmte Probleme stoßen.

Fehlende Bibliotheken

Denken Sie daran, dass es nicht ausreicht, die Binärbibliotheken zu installieren; Die Quelldateien oder Entwicklungsheader müssen ebenfalls installiert werden. Das Konfigurationsskript wird Sie zusammen mit der Dokumentation normalerweise auf alle Bibliotheken (Entwicklungsheader) aufmerksam machen, die Sie für eine erfolgreiche Kompilierung installieren müssen. Stellen Sie sicher, dass diese auf Ihrem System installiert sind.

Sie werden installiert und andere Fehler treten auf

Schlussfolgerung

Kompilieren von Software kann entweder ganz einfach oder ziemlich schmerzhaft sein. Glücklicherweise bieten viele Linux-Distributionen binäre Pakete, die zur Installation bereit sind, sodass das Kompilieren aus dem Quellcode normalerweise nicht erforderlich ist. Es ist besser, bei den Binärpaketen zu bleiben, die von den Software-Repos bereitgestellt werden, die von Ihrer Distribution bereitgestellt werden, falls sie verfügbar sind.


Linux
  1. Top 5 Quellcode-Repositories

  2. Quellcode von Netstat?

  3. So installieren Sie den Nano-Editor aus dem Quellcode

  4. Scribus – Eine Open-Source-Desktop-Publishing-Software

  5. Starten Sie Software-Installer unter Linux von Windows mit Cygwin

So installieren Sie ein Programm von der Quelle unter Linux

So erhalten Sie Nachrichten sofort von der Befehlszeile in Linux

So installieren Sie Software von der Quelle in Linux

So kompilieren Sie den Linux-Kernel aus der Quelle, um einen benutzerdefinierten Kernel zu erstellen

Grundlagen der Linux-Befehlszeile – Ausführen von Befehlen über die Befehlszeile

So installieren Sie Software aus dem Quellcode in Ihrem Linux-System