Einführung

In diesem Kapitel werden wir ein minimales Linux System kompilieren und installieren. Das System wird gerade genug Werkzeuge beinhalten um mit dem erstellen des endgültigen LFS Systems im nachfolgenden Kapitel beginnen zu können.

Das erstellen dieses minimalen Systems erfolgt in zwei Schritten: Als erstes erzeugen wir eine brandneue Host-unabhängige toolchain (Compiler, Assembler, Linker und Bibliotheken), und dann benutzen wir diese um alle weiteren essentiellen Werkzeuge zu kompilieren.

Die in diesem Kapitel kompilierten Dateien werden im Verzeichnis $LFS/tools installiert um sie von den restlichen Dateien des Systems sauber zu trennen. Die hier kompilierten Programme sind nur temporär und sollen nicht mit in unser endgültiges LFS System einfliessen.

Der Schlüssel um zum lernen wie Linux funktioniert ist, zu wissen wofür die installierte Software verwendet wird und warum der Benutzer oder das System sie benötigen. Aus diesem Grund steht vor den eigentlichen Installationsanweisungen jeweils eine kurze Zusammenfassung des Paketinhalts. Für eine kurze Beschreibung eines jeden Programmes schauen sie bitte in Anhang A.

Die Anweisungen zum kompilieren setzen voraus das sie die Bash Shell benutzen. Ausserdem wird grundsätzlich vorausgesetzt, das sie die Archive bereits entpackt haben und mit cd bereits in das jeweilige Quellverzeichnis gewechselt haben bevor sie die Kompilieranleitung umsetzen.

Einige der Pakete werden vor dem kompilieren gepatcht, aber nur um ein potentielles Problem zu umgehen. Meist wird ein Patch sowohl in diesem als auch im folgenden Kapitel benötigt, manchmal aber auch nur in einem.

Während der Installation der meisten Pakete werden sie alle möglichen Compiler Warnungen vorbeirollen sehen. Das ist normal und kann einfach ignoriert werden. Sie sind wirklich nur Warnungen -- meistens über missbilligte,(aber nicht ungültige) Benutzung von C oder C++ Syntax. Die C Standards haben sich im laufe der Zeit oft verändert und einige Pakete benutzen immer noch alte Standards, aber das ist kein wirkliches Problem.

Solange nicht anders angegeben können sie die Quell- und Kompilierverzeichnisse nach dem installieren des jeweiligen Paketes löschen -- zum Beispiel um aufzuräumen oder Platz zu sparen.

Bevor sie fortfahren stellen sie bitte mit folgenden Kommando sicher, das die LFS Umgebungsvariable korrekt gesetzt ist:

echo $LFS

Die Ausgabe sollte den Pfad zum Einhängepunkt ihrer LFS Partition anzeigen, normalerweise /mnt/lfs wenn sie unserem Beispiel gefolgt sind.