Maison >développement back-end >C++ >Comment configurer un compilateur croisé pour Raspberry Pi à l'aide d'une chaîne d'outils pré-construite ?

Comment configurer un compilateur croisé pour Raspberry Pi à l'aide d'une chaîne d'outils pré-construite ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-21 00:19:10452parcourir

How to Set Up a Cross Compiler for Raspberry Pi Using Pre-Built Toolchain?

Comment configurer le compilateur Raspberry Pi Cross pré-construit

Arrière-plan

Paramètre La mise en place d'un compilateur croisé pour Raspberry Pi sur Ubuntu peut sembler compliquée en raison des différences entre les versions du compilateur et la compatibilité du système d'exploitation. Cet article vise à fournir un didacticiel complet pour installer la chaîne d'outils prédéfinie à partir de GitHub.

Prérequis

Assurez-vous d'avoir les éléments suivants installé :

apt-get install git rsync cmake libc6-i386 lib32z1 lib32stdc++6

Installation

  1. Créez un répertoire Raspberry Pi : Créez un dossier appelé « raspberrypi » dans votre répertoire personnel .
  2. Téléchargez les outils : Accédez au 'raspberrypi' et clonez le référentiel 'tools' depuis GitHub :
git clone git://github.com/raspberrypi/tools.git
  1. Sélectionnez la chaîne d'outils appropriée : Choisissez 'gcc-linaro-arm-linux -gnueabihf-raspbian' chaîne d'outils.
  2. Ajouter à PATH : Ajoutez ce qui suit à la fin de votre fichier '~/.bashrc' :
export PATH=$PATH:$HOME/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin
  1. Chargez les modifications de PATH : Soit vous vous déconnectez et revenez ou courez. ~/.bashrc pour mettre à jour votre session de terminal actuelle.
  2. Vérifiez le compilateur : Vérifiez que le compilateur est accessible en exécutant arm-linux-gnueabihf-gcc -v.

Adressage commun Problèmes

  • Erreur de la bibliothèque partagée : Pour corriger les erreurs liées à la bibliothèque 'libstdc', copiez l'intégralité des répertoires '/lib' et '/usr' de votre Raspberry Pi dans un dossier appelé « rootfs » dans votre répertoire « raspberrypi » en utilisant rsync :
rsync -rl --delete-after --safe-links [email protected]:/{lib,usr} $HOME/raspberrypi/rootfs
  • Fichier de configuration cmake : Créez un fichier nommé 'pi.cmake' dans '~home/raspberrypi' et ajoutez le contenu suivant :
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)
  • Compiler en utilisant cmake : Pour compiler programmes cmake, utilisez l'indicateur -D CMAKE_TOOLCHAIN_FILE=$HOME/raspberrypi/pi.cmake.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn