Étape 2: Compiler les outils de compilation
Compilation de gcc prend longtemps, donc j’ai Let's get a commencé, et alors qu’il est la compilation, vous pouvez lire l’explication pour tout ce qui est ci-dessous. Cela suppose que la gcc et make sont déjà installés sur votre système. Si ce n’est pas le cas, vous aurez besoin de les installer.
CD ~/Downloads
sudo apt-get install texinfo attendre libx11-dev g ++ flex bison libncurses5-dev
sudo mkdir /opt/msp430-toolchain mkdir build cd compilation
Export PREFIX = / opt/msp430-toolchain
Export cible = msp430-aucun-elf
export PATH = $PREFIX/bin: $PATH
.. /sources/Tools/configure--target = $TARGET--prefix = "$PREFIX"--programme-préfixe = msp430---enable-langues = c--disable-nls
tous les
Maintenant que son exécutant, voici la répartition de ce que vous faisiez juste.
sudo apt-get install texinfo attendre libx11-dev g ++ flex bison libncurses5-dev
Ici, nous installons les paquets qui sont requises pour compiler gcc
- Texinfo : utilitaire pour vous aider à créer des documents dans différents formats
- attendre : programme qui parle à d’autres programmes de manière interactive, utilisé dans les scripts
- libx11-dev : X11 paquet de développement pour le système fenêtrage
- g ++: compilateur gnu C++
- Flex : générateur d’analyseur lexical rapide
- bison : générateur d’analyseur syntaxique
- libncurses5-dev : forfait de manipulation et d’optimisation écran, essentiellement une mise à niveau terminale
Comme mentionné ci-dessus, si vous ne faites pas actuellement ont gcc et faire installé déjà, vous devez les ajouter à cette liste.
sudo mkdir /opt/msp430-toolchain
Il s’agit du répertoire dans lequel seront installés les outils de compilation. Personnellement, je voudrais installer mon toolchains sous le répertoire « / opt ». Ce répertoire est possédé par la racine, et les autres utilisateurs peuvent seulement lire et exécuter donc chaque fois que vous installez dans ce répertoire vous devez le faire en tant que root.
mkdir build
génération de CD
Ensuite, il faut créer un répertoire de build. Une remarque très importante sur la compilation de gcc est que vous ne pouvez pas le construire dans le répertoire source. Si vous essayez, vous êtes très probable d’obtenir des erreurs de génération.
Export PREFIX = / opt/msp430-toolchain
Export cible = msp430-aucun-elf
export PATH = $PREFIX/bin: $PATH
Avant de compiler gcc, certaines variables d’environnement doivent être définis. Nous ne voulons pas qu’ils soient système large ou persistante, donc nous allons les définir uniquement dans le contexte de notre coquille. Pour ce faire, nous utilisons la commande exporter. Les variables d’environnement définies sont :
- PRÉFIXE – le répertoire où sera installé votre compilateur croisé
- CIBLE – l’architecture cible au format--ou quelque chose de cette nature (son pas vraiment bien définie). Dans notre cas, l’arc est msp430, cible-os est none, parce que ce sera le développement de métal nu, et la sortie est format elf
- Chemin d’accès – le chemin d’accès système, déjà défini, mais il faut ajouter l’emplacement des fichiers binaires, nous allons construire lui
.. /sources/Tools/configure--target = $TARGET--prefix = "$PREFIX"--programme-préfixe = msp430---enable-langues = c--disable-nls
Comme avec la plupart des logiciels gnu, l’environnement de génération s’inspire d’automake/autoconf. Ces outils peuvent être assez compliqués à comprendre et les paramètres que vous avez passez en eux sont parfois obscurs et mal documentées. Fondamentalement, c’est ce qui doit être fait :
- Exécutez le script de configuration en passant les arguments requis qui sont définies par le fichier de configuration pour un programme spécifique
- Le script analyse votre système pour diverses dépendances et d’après les informations qu’il recueille, il est capable de générer les fichiers makefile, les fichiers de configuration et parfois fichiers d’en-tête qui seront compatibles avec votre système. Si vous n’êtes pas familier avec les makefiles, ne vous inquiétez pas à ce sujet pour l’instant, je vais avoir une leçon consacrée à eux. Parfois les dépendances ne peuvent être résolus dans ce cas la configuration (ou construction) échouera
- Compilez le code
- Installer le programme
Dans le cas de la gcc, le script configure accepte plusieurs arguments, mais seuls quelques-uns sont requis dans la plupart des cas. L’argument target et préfixe sont les directives décrites dans la section de variables d’environnement. Le programme-préfixe ajoute simplement un préfixe pour tous les fichiers binaires, par exemple gcc deviendra msp430-CCG. Cela est utile lorsque vous voulez avoir un makefile qui peut générer le même code pour beaucoup d’architectures. Par exemple, si je voulais compiler main.c msp430 et bras, je pourrais définir mon compilateur $ (cible)-gcc puis configurez avec cible = msp430 pour utiliser gcc-msp430 ou configurer avec cible = bras pour utiliser les bras-CCG. Le drapeau de disable-nls raconte la build pour désactiver Native Language Support (NLS) qui signifie fondamentalement que gcc sorties seulement les diagnostics en anglais. Enfin, activer les langues indique le système de génération pour compiler uniquement les langues spécifiées. Seulement C est activé puisque c’est la langue que nous utiliserons. Si vous êtes intéressé par les nombreuses autres options pour la compilation de gcc vous pouvez lire tout sur eux ici.
Une dernière chose, si vous avez besoin de complètement nettoyer votre répertoire de build ou de reconstruire à partir de zéro, le « make distclean » commande est censé pour le faire pour vous, mais dans mon expérience, il n’est pas toujours efficace. Ses plus facile et plus sûr de supprimer simplement l’ensemble construire répertoire et recommencer.
La compilation n’a fini ? Sinon, prenez une pause café...
Maintenant que son fait, vous devez l’installer. Étant donné que / opt est détenue par la racine, la commande install doit être exécuté avec sudo.
sudo faire installer
Cette opération copie tous les fichiers requis à partir du répertoire de build dans le répertoire spécifié par la variable d’environnement préfixe.