J'ai récemment commencé un nouveau projet en utilisant mon Arduino qui ramasse la poussière depuis un moment. Avec la carte physique collectant la poussière, ma copie d'Avr-Gcc et des bibliothèques Arduino a également. Je peux gérer la mise à jour avr-gcc, mais je ne me souviens pas comment j'ai compilé les bibliothèques Arduino. Avec la source Arduino, il y a des fichiers sources répertoriés et autres, mais aucun makefile (que je peux voir) pour réellement construire la bibliothèque. Je ne me soucie pas de construire l'IDE, je veux juste la bibliothèque au format binaire et les fichiers d'en-tête dont j'ai besoin. Existe-t-il une documentation ou autre pour le faire?
Je ne veux pas utiliser l'IDE Arduino, je préfère utiliser mon propre éditeur de texte et un makefile.
Réponses:
J'ai créé un petit projet avec un système de construction personnalisé (en utilisant Ruby) qui rend cela assez facile sans avoir à installer l'IDE Arduino. Fondamentalement, il utilise un modèle Makefile et un script ruby pour rendre la compilation des bibliothèques Arduino extrêmement facile. Vous pouvez le voir sur https://github.com/Earlz/make-wiring
Cependant, je laisse l'ancienne réponse ici pour plus d'informations sur la façon de rouler la vôtre. C'est assez lourd et ennuyeux:
Instructions:
hardware/arduino/cores/arduino
dans un nouveau répertoire que j'appellerai arduino_buildpins_arduino.h
fichier de la variante Arduino qui vous appartienthardware/arduino/variants
(consultez boards.txt si vous n'êtes pas sûr) dans arduino_build.
Et puis juste courir
Et puis, pour utiliser les bibliothèques compilées, vous pouvez utiliser un simple makefile comme celui-ci:
De plus, si vous essayez de compiler les bibliothèques dans,
libraries/
vous obtiendrez une erreur de l'éditeur de liens si vous ne faites pas les choses dans le bon ordre. Par exemple, j'ai dû le faire pour utiliser SoftwareSerial:La
-larduino
doit être la dernière bibliothèque sur la ligne de commandeQuoi qu'il en soit, c'était un moyen assez facile de le compiler pour moi. À mesure que les futures versions d'Ardunio sortiront, ce makefile devrait être assez évolutif, ne nécessitant que quelques modifications à OBJS et HDRS. En outre, ce makefile devrait fonctionner avec BSD make et GNU make
Voir aussi une version légèrement modifiée de cette réponse sur mon blog avec un binaire déjà compilé de la bibliothèque (compilé en utilisant le pins_arduino.h "standard").
** MODIFIER **
J'ai trouvé que l'ajout des indicateurs d'optimisation de compilateur suivants à la fois au Makefile de création de bibliothèque et à chaque Makefile de projet individuel réduit considérablement la taille du binaire compilé final. Cela rend la taille binaire finale comparable à celle de l'IDE.
.
Donc, pour le makefile de la bibliothèque:
et, pour chaque makefile de projet:
.
Réf: http://arduino.cc/forum/index.php?topic=153186.0
la source
Si vous êtes prêt à utiliser l'Arduino IDE une fois (ou une fois par type de périphérique), c'est le moyen le plus simple de créer une bibliothèque statique, ainsi que d'obtenir les sources de la bibliothèque. Après cela, vous pouvez utiliser les outils de développement qui vous conviennent.
Cet article Arduino (écrit pour les utilisateurs passant à l'IDE Eclipse) décrit la construction de la bibliothèque Arduino en compilant un croquis avec l'IDE Arduino et en récupérant la bibliothèque à partir du répertoire temporaire d'Arduino. Faites défiler environ 1/4 de la page jusqu'à la section
la source
Si vous avez juste besoin d'un système de construction qui peut également piloter votre programmeur de microcontrôleur, platformio est votre ami.
la source