[Buildroot] Teil 2: Software – Konfiguration

Vorheriger Artikel: [Buildroot] Teil 1: Embedded Linux

Generell müssen wir zwischen den Kernel-Funktionalitäten und der Software, mit der man dann auf die Funktionen zugreift, unterscheiden.

Deaktiviert man zum Beispiel den Sound im Kernel, so gibt es keine Sound-Unterstützung, auch wenn die Software dafür auf dem System vorhanden ist.

In diesem Beitrag wollen wir mal ein paar einfache Softwareanpassungen vornehmen – der Kernel kommt dann später dran.

Konfigurationsdatei .config

Die zuvor geladene Konfigurationsdatei [...]_defconfig wurde im letzten Artikel mit make [...]_defconfig in die Datei .config geladen und dort werden auch die Änderungen vorgenommen.

Diese Änderungen kann man per Hand machen und danach den Kompiliervorgang starten. Es ist jedoch nicht so einfach, welche Einstellungen gesetzt werden müssen. Für bestimmte bestimmte Funktionen werden teilweise auch verschiedene Werte gesetzt.

menuconfig

Eine Hilfe bei der Konfiguration ist das Tool menuconfig.

$ make menuconfig

Mit diesem Konfigurationstool können sehr viele Software-Anpassungen vorgenommen werden und es setzt die entsprechenden Werte in der .config Datei. Wenn zum Beispiel der Editor nano oder Python mit in die Linux-Version kompiliert werden sollen, so sind auch direkt entsprechende Module hinterlegt die angeben, woher die Pakete geladen werden sollen und wohin sie kopiert werden müssen.

In der Default-Config hat das System den Hostname buildroot und keinen Texteditor. Das wollen wir nun ändern.

Hostname und Begrüßung

Unter System configuration und System hostname bzw. System banner kann der Hostname und der Begrüßungstext geändert werden.

Die Änderung wird nach dem Speichern entsprechend auch in der .config Datei sichtbar.

Root Passwort

Das Root-Passwort kann ebenfalls unter System configuration gesetzt werden.

Texteditor nano

Der Texteditor nano kann unter Target packages / Text editors and viewers ausgewählt werden.

Manchmal haben Pakete oder Optionen auch Abhängigkeiten. menuconfig zeigt diese Abhängigkeiten dann auch an. In diesem Falle ist nano von WCHAR abhängig, das unter toolchain ausgewählt werden kann.

Nach Auswahl von WCHAR ist nano dann verfügbar.

In der .config Datei sind die zugehörigen Werte nun entsprechend gesetzt.

Diese kleine Änderung soll stellvertretend für all die Änderungen stehen, die am Linux-System vorgenommen werden können.

Im Anschluss wird der Kompiliervorgang gestartet.

$ make -j8

Build Error

Hin und wieder kann es zu Fehlern beim Kompiliervorgang kommen.

Abhilfte schafft hier ein Clean Build

$ make clean
$ make -j8

Custom

Das nun kompilierte Linux startet mit den entsprechenden Änderungen. und der Texteditor nano ist ebenfalls an Board.

Nächster Teil: [Buildroot] Teil 3: Ordnerstruktur

Deine E-Mail-Adresse wird nicht veröffentlicht.