Während yum, apt-get, rpm sehr praktisch sind, um ein bereits kompiliertes Paket zu installieren, kann es dennoch vorkommen, dass Sie eine Software aus dem Quellcode installieren müssen.
Dieser Artikel erklärt auf sehr hohem Niveau, wie man eine Software aus dem Quellcode kompiliert und installiert.
Laden Sie das Quellcodepaket herunter und entpacken Sie es
Der Quellcode für Software unter Linux liegt in Form von komprimierten Tar-Dateien vor, die normalerweise entweder die Erweiterungen .tar.gz oder .tar.bz2 haben. Die Tools, die zum Packen des Quellcodes in diese Tar-Kugeln verwendet werden, sind „tar“ (zum Zusammenfassen mehrerer Dateien zu einer), „gzip“ oder bzip2 (zum Komprimieren). Um den Quellcode-Tarball für eine bestimmte Software abzurufen, müssen Sie die URL zum Tarball kennen.
Sobald Sie den Download-Link haben, verwenden Sie „wget“, um den Tarball von der Befehlszeile abzurufen.
$ wget <link to the tarball>
Der obige Befehl lädt den Tarball in das aktuelle Verzeichnis herunter. Der Befehl wget ist sehr flexibel und hat viele Optionen. Weitere Informationen zu wget finden Sie in den 15 wget-Beispielen.
Als nächstes müssen Sie den Tarball entpacken, um Zugriff auf den Quellcode und andere Dateien zu erhalten. Verwenden Sie je nach Erweiterung einen der folgenden Befehle:
$ tar -xvfz <name of tarball with .tar.gz extension> (or) $ tar -xvfj <name of tarball with tar.bz2 extension>
Der Befehl tar ist sehr flexibel und hat viele Optionen. Um mehr über tar zu erfahren, sehen Sie sich die 10 tar-Beispiele an.
Installationsdokumentation lesen
Sobald der Quellcode der Software heruntergeladen und extrahiert wurde, sollte man als allererstes die Dokumentation durchgehen. Dies mag für die meisten von uns langweilig klingen, aber dies ist ein sehr wichtiger Schritt, da die gründliche Ausführung dieses Schritts Sie vor den meisten zukünftigen Problemen bewahren würde. Die Dokumentation enthält Informationen über die Software, Änderungen seit der letzten Version, Links zu weiterer Dokumentation, Informationen zum Autor der Software, Schritte zum Kompilieren und Installieren von Software usw. Wir können also sehen, dass viele wertvolle Informationen in der Dokumentation enthalten sind.
Diese gesamten Informationen sind grob in zwei Dateien unterteilt:„Readme“ und „Install“. Während „Installieren“ alle für die Kompilierung und Installation erforderlichen Informationen enthält, sind alle anderen Informationen in der „Readme“-Datei enthalten. Bitte beachten Sie, dass Dateiname und Groß-/Kleinschreibung variieren können.
Konfiguration
Sobald der obige Schritt abgeschlossen ist, können wir davon ausgehen, dass wir über ausreichende theoretische Kenntnisse über diese Software verfügen, und können nun fortfahren und die Umgebung zum Kompilieren und Installieren der Software auf unserem System konfigurieren. Die meisten Pakete werden mit einem Konfigurationsskript geliefert, das zum Konfigurieren der Umgebung verwendet werden kann. Der Dateiname für die Konfigurationsdatei ist meistens „configure“. Dieses Skript akzeptiert normalerweise Parameter, die zur Steuerung einiger Funktionen dieser Software verwendet werden können. Außerdem stellt dieses Skript sicher, dass alle für die Kompilierung erforderlichen Tools im System vorhanden sind.
Führen Sie den folgenden Befehl aus, um mehr über die von einer bestimmten Konfigurationsdatei bereitgestellten Optionen zu erfahren:
$ configure --help
Um mit der Konfiguration der Build-Umgebung zu beginnen, führen Sie den folgenden Befehl aus:
$ ./configure
Der obige Befehl überprüft und/oder erstellt die Build-Umgebung und wenn alles gut geht, erzeugt er eine Datei namens „makefile“. Die Datei ‚makefile‘ wird bei der Kompilierung der Software verwendet.
Zusammenstellung
Sobald das Makefile generiert ist, führen Sie im selben Verzeichnis einfach den folgenden Befehl aus:
$ make
Der obige Befehl kompiliert den gesamten Quellcode der Software. Wenn bei der Kompilierung ein Problem auftritt, wird ein Fehler auf der Konsole ausgegeben.
Installation
Sobald die Kompilierung erfolgreich abgeschlossen ist, werden alle erforderlichen Binärdateien erstellt. Jetzt ist es an der Zeit, diese Binärdateien in den Standardpfaden zu installieren, damit sie von überall im System aufgerufen werden können. Führen Sie dazu den folgenden Befehl aus:
$ make install
Beachten Sie, dass für die Installation der Software manchmal Root-Rechte erforderlich sein können, sodass Sie die Rechte erlangen und dann mit dem obigen Befehl fortfahren können.
Die obigen 5 Schritte zeigen, wie Sie die Software von der Quelle abrufen, entpacken, konfigurieren, kompilieren und installieren. Zusätzlich könnte man etwas aufräumen, indem man das Verzeichnis entfernt, das beim Entpacken des Software-Tarballs erstellt wurde.
Die folgenden Artikel sind einige Beispiele dafür, wie eine Software aus dem Quellcode installiert wird.
- So installieren Sie Apache 2.4.2 von der Quelle auf CentOS 6.2 mit SSL
- So installieren und konfigurieren Sie Nginx von der Quelle unter Linux
- Anleitung zur Installation von PHP5 aus der Quelle unter Linux
- Tripwire-Tutorial:Hostbasiertes Linux-Angriffserkennungssystem
- HowTo:7 Steps for Linux vsftpd Install, Configuration, Users Setup
Beim Kompilieren und Installieren von Open-Source-Software aus dem Quellcode können einige Probleme/Fehler auftreten. Sehen wir uns hier einige davon an:
- Fehlende gemeinsam genutzte Bibliothek:Wenn Sie das gerade installierte Programm ausführen, erhalten Sie manchmal einen Fehler im Zusammenhang mit einigen .so-Dateien, die Ihr Programm nicht finden kann. Erstens sind .so Synonyme für die DLLs, die wir in Windows haben. Dies sind gemeinsam genutzte Bibliotheken, die vom Programm benötigt werden. Zweitens treten diese Art von Fehlern auf, wenn Ihr Programm in einem nicht standardmäßigen Pfad installiert wird oder die gemeinsam genutzte Bibliothek tatsächlich nicht in Ihrem System vorhanden ist. Im ersten Fall müssen Sie der Shell-Umgebung den Pfad mitteilen, in dem diese neuen gemeinsam genutzten Bibliotheken installiert sind. Dies kann mit dem Befehl „ldconfig“ oder durch Ändern der Variablen LD_LIBRARY_PATH erfolgen.
- Beschädigter Quellcode:Egal, wie viel Mühe Sie sich geben, die gesamte Dokumentation durchzugehen und alle Schritte zum Erstellen der Software abzudecken, aber wenn der Quellcode einen Kompilierungsfehler aufweist, bedeutet dies sehr stark, dass die Software einen beschädigten Quellcode hat. In diesem Fall kann nicht viel getan werden, außer dieses Problem an den Autor dieser Software zu verweisen. In der Zwischenzeit, wenn Sie glauben, dass Sie können, können Sie die Fehler debuggen und sehen, ob es sich um triviale Fehler handelt, die behoben werden können (wie syntaktische Fehler).
- Kein Konfigurationsskript:Obwohl selten, aber manchmal werden Sie feststellen, dass kein Konfigurationsskript im Quellcodeverzeichnis vorhanden ist. Wenn dies passiert, bedeutet das nicht, dass Sie stecken bleiben. In diesem Fall müssen Sie nur die Dokumentation im Detail durchgehen und dort finden Sie bestimmt einige Informationen zur Konfiguration der Umgebung zum Kompilieren und Installieren von Software.