Chaîne d'outils Cortex-m3

22

Je recherche une chaîne d'outils gratuite (comme en liberté) pour Linux (Ubuntu) qui me permette de développer un microcontrôleur ARM cortex-m3 (lpc1343). Où puis-je trouver une telle chaîne d'outils? Existe-t-il des tutoriels?

txwikinger
la source

Réponses:

15

CodeSourcery dispose d'une chaîne d'outils gcc gratuite pour le Cortex M3.

Il y a des instructions sur la configuration de la chaîne d'outils pour le Luminary LM3s6965 pour un hôte Windows, Mac et Linux ici: http://claymore.engineer.gvsu.edu/egr326/LM3S6965 . Il devrait également fonctionner avec votre processeur LPC avec des ajustements mineurs.

Voir aussi cette question: outils de développement ARM Cortex-M3?

Kevin Vermeer
la source
1
J'ai vu la question à laquelle vous avez fait référence, mais il n'était pas clair pour moi laquelle des chaînes d'outils là-bas était vraiment libre au sens de la définition de Freedom Software Foundation.
txwikinger
Les chaînes d'outils basées sur GCC sont garanties par la GPL comme étant libres selon la définition GNU. Cependant, les fournisseurs de chaînes d'outils ne restent pas en affaires en raison de leur nature: ils vendent du support, des IDE, des débogueurs GUI, etc., et distribuent librement les implémentations GCC qui fonctionnent (sauf pour Microchip-grr.) CodeSourcery G ++ Lite est un logiciel gratuit, non pris en charge version en ligne de commande de Sourcery G ++ parrainée par les partenaires matériels de CodeSourcery [qui] .... contient des outils en ligne de commande, y compris les compilateurs GNU C et C ++, l'assembleur et l'éditeur de liens GNU, les bibliothèques d'exécution C et C ++ et le débogueur GNU.
Kevin Vermeer
code sourcery publie leurs modifications dans gcc, vous pouvez donc emprunter cette voie, construire à partir de leurs mods vers gcc, ou simplement créer votre propre chaîne d'outils basée sur gnu directement à partir des sources gcc, sans entrer dans les trucs de codeourcery.
old_timer
1
Makefile / Instructions pour la construction des sources de CodeSourcery sur Mac OS X et Linux: github.com/jsnyder/arm-eabi-toolchain CodeSourcery est réellement pris en charge par ARM pour maintenir le port GCC pour ARM. Leur distribution a été testée en tant qu'unité (GCC, newlib, gdb, etc.) et contient souvent des correctifs qui pourraient prendre une version ou deux pour en faire la ligne principale de GCC.
James Snyder
7

Il y a un script de construction ici: http://github.com/esden/summon-arm-toolchain pour construire une chaîne d'outils basée sur gcc qui cible ARM à partir d'ordinateurs basés sur Debian.

Il déclare qu'il est testé et confirmé pour:

STM32F10x (carte d'évaluation Olimex STM32-H103, Open-BLDC v0.1, v0.2, v0.3)

qui semble être basé sur Cortex-M3.

Amos
la source
Je travaillerai pour tous les types Cortex-M3 (et M0) mais vous souhaiterez peut-être commenter la construction de certaines bibliothèques spécifiques à STM32.
jpc
3

La carte de développement Maple est un Arm Cortex M3 et bien qu'il ait son propre IDE et tel, vous pouvez certainement utiliser la chaîne d'outils GCC ARM comme décrit ici:

http://leaflabs.com/docs/libmaple/unix-toolchain/

Ce guide utilise Code :: Blocks comme IDE, que j'utilise et que je trouve très utile.

AngryEE
la source
1

Un peu daté maintenant, je peux / ai construit le dernier gcc (sous linux) comme compilateur croisé, mais il suffit d'utiliser du code

http://lpcstuff.blogspot.com/2008/09/roll-your-own-gcc.html

J'ai peu ou pas de désir pour une bibliothèque C ni une bibliothèque gcc, donc je me contente de ce que produit ce qui précède. Si vous voulez une bibliothèque C et / ou une bibliothèque gcc, vous devriez regarder ici, c'est le gcc le plus récent (c'est-à-dire 4.x) que je peux trouver qui se construit avec newlib et fonctionne.

http://www.cowlark.com/2009-07-04-building-gcc/

Ou vous pouvez prendre le chemin llvm, hors de la boîte llvm peut être utilisé comme un compilateur croisé, bras / pouce en particulier. Je mélange llvm avec des binutils gnu comme mon assembleur / éditeur de liens. Je préfère clang à llvm-gcc. Très facile à construire llvm à partir de sources (prend une éternité cependant) si vous voulez être à la pointe des correctifs, etc.

old_timer
la source