Cortex-m3-Toolchain

22

Ich suche eine kostenlose (wie in Freiheit) Toolkette für Linux (Ubuntu), mit der ich einen ARM cortex-m3 (lpc1343) Mikrocontroller entwickeln kann. Wo finde ich eine solche Toolchain? Gibt es Tutorials?

txwikinger
quelle

Antworten:

15

CodeSourcery verfügt über eine kostenlose gcc-basierte Toolchain für den Cortex M3.

Anweisungen zum Konfigurieren der Toolchain für den Luminary LM3s6965 für einen Windows-, Mac- und Linux-Host finden Sie hier: http://claymore.engineer.gvsu.edu/egr326/LM3S6965 . Es sollte auch mit Ihrem LPC-Prozessor mit geringfügigen Änderungen funktionieren.

Siehe auch diese Frage: ARM Cortex-M3 Entwicklungswerkzeuge?

Kevin Vermeer
quelle
1
Ich habe die von Ihnen angesprochene Frage gesehen, aber mir war nicht klar, welche der dortigen Toolketten im Sinne der Definition der Freedom Software Foundation wirklich frei war.
Txwikinger
GCC-basierte Toolchains werden von der GPL als frei gemäß der GNU-Definition garantiert. Toolchain-Anbieter bleiben jedoch aufgrund ihrer Spendenbereitschaft nicht im Geschäft: Sie verkaufen Support, IDEs, GUI-Debugger usw. und vertreiben funktionsfähige GCC-Implementierungen frei (mit Ausnahme von Microchip-grr.). CodeSourcery G ++ Lite ist eine kostenlose, nicht unterstützte Software Befehlszeilenversion von Sourcery G ++, gesponsert von den CodeSourcery-Hardwarepartnern [das] ...., enthält Befehlszeilentools, einschließlich der GNU C- und C ++ - Compiler, des GNU-Assemblers und -Linkers, der C- und C ++ - Laufzeitbibliotheken und des GNU-Debuggers.
Kevin Vermeer
Code Sourcery veröffentlicht ihre Modifikationen in gcc, so dass Sie diese Route einschlagen, von ihren Modifikationen in gcc umwandeln oder einfach Ihre eigene gnu-basierte Toolchain direkt aus den gcc-Quellen erstellen können, ohne sich mit Codesourcery zu befassen.
old_timer
1
Makefile / Anleitung zum Erstellen von CodeSourcery-Quellen unter Mac OS X und Linux: github.com/jsnyder/arm-eabi-toolchain CodeSourcery wird von ARM unterstützt, um den GCC-Port für ARM zu verwalten. Ihre Distribution wurde als Einheit getestet (GCC, newlib, gdb usw.) und enthält häufig Fehlerbehebungen, die möglicherweise ein oder zwei Versionen benötigen, um in die GCC-Hauptversion aufgenommen zu werden.
James Snyder
7

Hier gibt es ein Build-Skript: http://github.com/esden/summon-arm-toolchain , um eine gcc-basierte Toolchain zu erstellen, die auf ARM von Debian-basierten Computern abzielt.

Es besagt, dass es getestet und bestätigt wurde für:

STM32F10x (Olimex STM32-H103-Evaluierungsplatine, Open-BLDC v0.1, v0.2, v0.3)

das scheint Cortex-M3-basiert zu sein.

Amos
quelle
Ich werde für alle Cortex-M3- (und M0-) Typen arbeiten, aber Sie möchten möglicherweise den Aufbau einiger STM32-spezifischer Bibliotheken auskommentieren.
JPC
3

Das Maple-Entwicklungsboard ist ein Arm Cortex M3. Obwohl es über eine eigene IDE verfügt, können Sie die GCC ARM-Toolchain wie folgt verwenden:

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

In diesem Handbuch wird Code :: Blocks als IDE verwendet, was ich sehr nützlich finde.

AngryEE
quelle
1

Ein bisschen veraltet, ich kann / habe den neuesten GCC (unter Linux) als Cross-Compiler gebaut, benutze aber nur Code-Sourcing

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

Ich habe wenig oder keine Lust auf eine C-Bibliothek oder eine GCC-Bibliothek, also bin ich zufrieden mit dem, was das oben Genannte hervorbringt. Wenn Sie eine C-Bibliothek und / oder GCC-Bibliothek möchten, sollten Sie hier nachsehen, dies ist die neueste (dh 4.x) GCC, die ich finden kann und die mit newlib erstellt wird und funktioniert.

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

Oder Sie können den llvm-Pfad wählen. Llvm kann sofort als Cross-Compiler verwendet werden, insbesondere als Arm / Daumen. Ich mische llvm mit gnu binutils als Assembler / Linker. Ich ziehe clang llvm-gcc vor. Es ist sehr einfach, llvm aus Quellen zu erstellen (dauert allerdings eine Ewigkeit), wenn Sie auf dem neuesten Stand der Technik sein möchten.

Oldtimer
quelle