![64-Bit-RT-Kernel-Kompilierung für Raspberry Pi 4B. - Gunook 64-Bit-RT-Kernel-Kompilierung für Raspberry Pi 4B. - Gunook](https://i.howwhatproduce.com/images/001/image-528-24-j.webp)
Inhaltsverzeichnis:
2025 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2025-01-23 12:52
![64-Bit-RT-Kernel-Kompilierung für Raspberry Pi 4B 64-Bit-RT-Kernel-Kompilierung für Raspberry Pi 4B](https://i.howwhatproduce.com/images/001/image-528-25-j.webp)
Dieses Tutorial behandelt den Aufbau und die Installation des 64-Bit-Echtzeitkernels auf dem Raspberry Pi. RT Kernel ist entscheidend für die volle Funktionalität von ROS2 und anderen Real Time IOT-Lösungen.
Kernel wurde auf x64-basiertem Raspbian installiert, das hier heruntergeladen werden kann
Notiz. Dieses Tutorial erfordert, obwohl einfach, Grundkenntnisse des Linux-Betriebssystems.
Auch aufgrund von Einschränkungen dieser Plattform fehlen alle http-Links h. Um sie zu beheben, fügen Sie einfach "h" am Anfang des Links hinzu
Lieferungen
x64-basierter PC mit Linux
Raspberry Pi 4B mit bereits installiertem Raspbian 64
Verbindung zum Internet.
Schritt 1: Notwendige Werkzeuge besorgen
Zuerst müssen wir notwendige Entwicklungstools erwerben.
Sie können durch Ausführen der folgenden Befehle im Linux-Terminal abgerufen werden
sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev libisl-dev libncurses5-dev bc git-core bison flexsudo apt-get install libncurses-dev libssl-dev
Schritt 2: Kompilieren von nativen Build-Tools für die Cross-Kompilierung
Der nächste Schritt besteht darin, Tools für die Cross-Kompilierung unseres Kernels vorzubereiten und zu kompilieren.
Das erste Tool, das wir installieren werden, ist Binutils. Dieses Tutorial wurde mit Binutils Version 2.35 getestet.
cd ~/Downloadswget ttps://ftp.gnu.org/gnu/binutils/binutils-2.35.tar.bz2tar xf binutils-2.35.tar.bz2cd binutils-2.35/./configure --prefix=/opt/aarch64 -- --disable-nls
Nachdem die Konfiguration abgeschlossen ist, müssen wir das Programm mit den folgenden Befehlen kompilieren
machen -jx
sudo machen installieren
wobei -jx bedeutet, wie viele Jobs Sie parallel ausführen möchten. Als Faustregel gilt, es nicht höher zu setzen als die Anzahl der Threads, die Ihr System hat. (zum Beispiel make -j16)
und schließlich müssen wir den Pfad exportieren
export PFAD=$PFAD:/opt/aarch64/bin/
Dann fahren wir mit dem Bau und der Installation von GCC fort
cd..wget ttps://ftp.gnu.org/gnu/gcc/gcc-8.4.0/gcc-8.4.0.tar.xztar xf gcc-8.4.0.tar.xzcd gcc-8.4.0/. /contrib/download_prerequisites./configure --prefix=/opt/aarch64 --target=aarch64-linux-gnu --with-newlib --with-headers / --disable-nls --disable-shared --disable-threads --disable-libssp --disable-decimal-float / --disable-libquadmath --disable-libvtv --disable-libgomp --disable-libatomic / --enable-languages=c --disable-multilib
Als das gleiche wie vorher machen und installieren wir unseren Compiler
make all-gcc -jx
sudo make install-gcc
Wenn nach Befehl alles glatt gelaufen ist
/opt/aarch64/bin/aarch64-linux-gnu-gcc -v
sollte zu einer ähnlichen Reaktion führen.
ux-gnu-gcc -v Verwendung integrierter Spezifikationen. COLLECT_GCC=/opt/aarch64/bin/aarch64-linux-gnu-gcc COLLECT_LTO_WRAPPER=/opt/aarch64/libexec/gcc/aarch64-linux-gnu/8.4.0/lto-wrapper Ziel: aarch64-linux-gnu Konfiguriert mit:./configure --prefix=/opt/aarch64 --target=aarch64-linux-gnu --with-newlib --with-headers --disable-nls --disable-shared --disable-threads --disable-libssp --disable-decimal-float --disable-libquadmath --disable-libvtv --disable-libgomp --disable-libatomic --enable-languages=c --disable-multilib Thread-Modell: Single gcc Version 8.4.0 (GCC)
Schritt 3: Kernel patchen und Kernel konfigurieren
Jetzt ist es an der Zeit, unseren Kernel- und RT-Patch zu erhalten.
Dieses Tutorial verwendet den rpi-Kernel v 5.4 und den RT-Patch RT32. Diese Kombination hat mir gut getan. Allerdings sollte mit verschiedenen Versionen alles gut funktionieren.
mkdir ~/rpi-kernel
cd ~/rpi-kernel git clone ttps://github.com/raspberrypi/linux.git -b rpi-5.4.y wget ttps://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt /5.4/older/patch-5.4.54-rt32.patch.gz mkdir kernel-out cd linux
Entpacken Sie dann den Patch.
gzip -cd../patch-5.4.54-rt32.patch.gz | patch -p1 --verbose
Und initialisieren Sie die Konfiguration für Rpi 4B
make O=../kernel-out/ ARCH=arm64 CROSS_COMPILE=/opt/aarch64/bin/aarch64-linux-gnu-bcm2711_defconfig
Danach müssen wir die Menükonfiguration eingeben
make O=../kernel-out/ ARCH=arm64 CROSS_COMPILE=/opt/aarch64/bin/aarch64-linux-gnu-menuconfig
Wenn es startet, brauchen wir die vorhandene Konfiguration, dann gehen Sie zu
Allgemein -> Preemtion-Modell und wählen Sie die Option Echtzeit.
dann speichern wir die neue Konfiguration und verlassen das Menü.
Schritt 4: RT-Kernel erstellen
Jetzt ist es Zeit für die Kompilierung. Beachten Sie, dass dies je nach PC-Fähigkeiten lange dauern kann.
make -jx O=../kernel-out/ ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-
Wie zuvor bedeutet -jx die Anzahl der Jobs. Nach erfolgreicher Kompilierung müssen wir unseren Kernel packen und an Raspberry Pi senden. Dazu führen wir folgende Befehle aus.
export INSTALL_MOD_PATH=~/rpi-kernel/rt-kernelexport INSTALL_DTBS_PATH=~/rpi-kernel/rt-kernelmake O=../kernel-out/ ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-modules_install dtbs_installcp-.. out/arch/arm64/boot/Image../rt-kernel/boot/kernel8.imgcd $INSTALL_MOD_PATHtar czf../rt-kernel.tgz *cd..
Jetzt sollte sich unser Kernel im rt-kernel.tgz-Archiv befinden und bereit sein, gesendet und installiert zu werden.
Schritt 5: Neuen Kernel installieren
Der einfachste Weg, unseren Kernel an raspbperry zu senden, ist die Verwendung von scp.
Wir führen einfach folgenden Befehl aus.
scp rt-kernel.tgz pi@:/tmp
Jetzt müssen wir uns über ssh bei unserem Pi anmelden und unseren Kernel entpacken.
ssh pi@
Wenn wir eingeloggt sind, kopieren wir unsere Dateien mit den folgenden Befehlen.
cd /tmptar xzf rt-kernel.tgz cd boot sudo cp -rd * /boot/ cd../lib sudo cp -dr * /lib/ cd../overlays sudo cp -dr * /boot/overlays cd../ broadcom sudo cp -dr bcm* /boot/
Danach müssen Sie nur noch die Datei /boot/config.txt bearbeiten und die folgende Zeile hinzufügen.
kernel=kernel8.img
Nach dem Neustart von Pi sollte alles einwandfrei funktionieren.
Um zu überprüfen, ob der neue Kernel erfolgreich installiert wurde, können Sie Folgendes ausführen:
uname -a
Befehl
Empfohlen:
Arduino Auto-Rückfahrwarnsystem - Schritt für Schritt: 4 Schritte
![Arduino Auto-Rückfahrwarnsystem - Schritt für Schritt: 4 Schritte Arduino Auto-Rückfahrwarnsystem - Schritt für Schritt: 4 Schritte](https://i.howwhatproduce.com/images/001/image-458-22-j.webp)
Arduino Auto-Rückfahrwarnsystem | Schritt für Schritt: In diesem Projekt entwerfe ich eine einfache Arduino-Auto-Rückwärts-Parksensorschaltung mit Arduino UNO und dem Ultraschallsensor HC-SR04. Dieses Arduino-basierte Car-Reverse-Warnsystem kann für eine autonome Navigation, Roboter-Ranging und andere Entfernungsr
Anleitung für Raspberry Pi Gaming Emulator: 7 Schritte
![Anleitung für Raspberry Pi Gaming Emulator: 7 Schritte Anleitung für Raspberry Pi Gaming Emulator: 7 Schritte](https://i.howwhatproduce.com/images/002/image-4112-8-j.webp)
Raspberry Pi Gaming Emulator Anleitung: Jeder liebt es zu spielen. Auch wenn wir ernsthafte Arbeit leisten. Und das ist natürlich, denn jeder verdient Ruhe, Freizeit oder Freizeit. Und natürlich können wir uns kaum weigern, unser Lieblingsspiel gespielt zu haben. Ich erinnere mich an die Zeit, als ein Typ
Anfängerleitfaden für Raspberry Pi: 6 Schritte (mit Bildern)
![Anfängerleitfaden für Raspberry Pi: 6 Schritte (mit Bildern) Anfängerleitfaden für Raspberry Pi: 6 Schritte (mit Bildern)](https://i.howwhatproduce.com/images/005/image-13216-j.webp)
Anfängerleitfaden für Raspberry Pi: Ich arbeite seit geraumer Zeit mit Arduino. Es ist einfach, billig und erledigt die Arbeit. Aber in letzter Zeit tendiere ich mehr zu IoT-Projekten. Also begann ich mit dem ESP-Entwicklungsboard und es funktionierte perfekt. Aber jetzt möchte ich in Richtung
Hutschienenhalterung für Raspberry Pi 4: 7 Schritte
![Hutschienenhalterung für Raspberry Pi 4: 7 Schritte Hutschienenhalterung für Raspberry Pi 4: 7 Schritte](https://i.howwhatproduce.com/images/001/image-685-45-j.webp)
Hutschienenhalterung für Raspberry Pi 4: Manchmal ist es sinnvoll, Ihr Raspberry Pi 4 basiertes Projekt dauerhaft in einem Schaltschrank zu montieren - zum Beispiel in der Hausautomation oder industriellen Anwendungen. In solchen Fällen hilft Ihnen unser RasPiBox Gehäuse-Set für Raspberry Pi A+, 3B+ und 4B
Tox & Toxygen für den Raspberry Pi 3: 5 Schritte
![Tox & Toxygen für den Raspberry Pi 3: 5 Schritte Tox & Toxygen für den Raspberry Pi 3: 5 Schritte](https://i.howwhatproduce.com/images/003/image-8791-20-j.webp)
Tox & Toxygen für den Raspberry Pi 3: In dieser Anleitung erfahren Sie, wie Sie Toxygen auf Raspberry Pi 3 installieren und verwenden. Aber zuerst sprechen wir über Tox.Tox ist eine verschlüsselte Art zu sprechen und laut seiner Website "A New Kind" von Instant Messaging. Ob Konzerne oder Regierungen