Heim >Backend-Entwicklung >C++ >Wie führt man eine Cross-Kompilierung für Raspberry Pi unter Ubuntu durch?
Cross-Compiling für Raspberry Pi unter Ubuntu
Um Cross-Compiling für Raspberry Pi unter Ubuntu zu aktivieren, müssen Sie das installieren Folgende vorausgesetzte Pakete:
apt-get install git rsync cmake libc6-i386 lib32z1 lib32stdc++6
Besorgen Sie sich die Toolchain
Erstellen Sie in Ihrem Home-Verzeichnis einen Ordner mit dem Namen raspberrypi und verwenden Sie Git, um die Toolchain herunterzuladen:
git clone git://github.com/raspberrypi/tools.git
Wählen Sie den Compiler aus
Wählen Sie die gcc-linaro-arm-linux-gnueabihf-raspbian-Toolchain innerhalb der raspberrypi/tools-Ordner.
Fügen Sie den Compiler zu Ihrem PATH hinzu
Bearbeiten Sie die .bashrc-Datei und fügen Sie die folgende Zeile hinzu:
export PATH=$PATH:$HOME/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin
Laden Sie die PATH-Änderungen
Starten Sie Ihre Terminalsitzung neu oder führen Sie . ~/.bashrc, um die PATH-Änderungen anzuwenden.
Überprüfen Sie den Compiler
Führen Sie arm-linux-gnueabihf-gcc -v aus, um die Installation des Compilers zu überprüfen. Es sollten Informationen über die ausgewählte Toolchain angezeigt werden.
Erstellen der Rootfs- und CMake-Konfiguration
Um das Problem mit fehlenden gemeinsam genutzten Bibliotheken zu beheben, führen Sie die folgenden zusätzlichen Schritte aus:
Verwenden Sie rsync, um die Verzeichnisse /lib und /usr von Ihrem Raspberry Pi in das Rootfs-Verzeichnis auf Ihrem Ubuntu-Computer zu kopieren:
rsync -rl --delete-after --safe-links [email protected]:/{lib,usr} $HOME/raspberrypi/rootfs
SET(CMAKE_SYSTEM_NAME Linux) SET(CMAKE_SYSTEM_VERSION 1) SET(CMAKE_C_COMPILER $ENV{HOME}/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-gcc) SET(CMAKE_CXX_COMPILER $ENV{HOME}/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++) SET(CMAKE_FIND_ROOT_PATH $ENV{HOME}/raspberrypi/rootfs) SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
Cross-Compiling mit CMake
Um Ihre Programme mit CMake Cross-compilieren zu können, geben Sie beim Aufruf von CMake die Variable CMAKE_TOOLCHAIN_FILE an:
cmake -D CMAKE_TOOLCHAIN_FILE=$HOME/raspberrypi/pi.cmake ...
Das obige ist der detaillierte Inhalt vonWie führt man eine Cross-Kompilierung für Raspberry Pi unter Ubuntu durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!