U23 2012/Toolchain

From C4 Wiki
< U23 2012
Revision as of 11:35, 20 October 2012 by Andy (talk | contribs) (udev-Regeln)
Jump to: navigation, search

Toolchain bauen

Wenn ihr die Toolchain für unser Projekt selber bauen wollt, findet ihr hier eine Anleitung dazu.

Die Abhängigkeiten, die ihr dazu braucht, könnt ihr unter Debian-ähnlichen Linux Distributionen mit dem folgenden Befehl installieren:

sudo apt-get install git libgmp-dev libmpc-dev libmpfr-dev make build-essential texinfo libusb-dev autoconf automake libz-dev ncurses-dev

Bei anderen Distributionen heissen die Pakete ähnlich. Sucht einfach mal in eurem Paketmanager.

Nachdem ihr die Abhängigkeiten alle habt, müsst ihr das git-Repository der Toolchain von unserem github clonen und die Toolchain mit einem make bauen:

mkdir u23
cd u23
git clone git://github.com/cccc/STM32-Toolchain.git
cd STM32-Toolchain
make
Solltet ihr einen Fehler bekommen, könnt ihr mit einem
make V=1
die Schritte widerholen und solltet dabei irgendwo eine Fehlermeldung ausgegeben bekommen. Die Toolchain ist nach einem erfolgreichen Build im Ordner
u23/STM32-Toolchain/arm-none-eabi
. Wenn ihr die Toolchain jetzt benutzen wollt, müsst ihr den Pfad noch in eure PATH-Variable aufnehmen:
export PATH=/pfad/zum/u32/Ordner/STM32-Toolchain/arm-none-eabi/bin:$PATH

udev-Regeln

Damit ihr unter Linux als normaler User auf euer STM32-Board schreiben könnt, müsst ihr noch eine udev-Regel zu eurem System hinzufügen.

Gebt dazu auf einer Konsole die folgende Zeile ein (nur für Ubuntu):

gksudo gedit /etc/udev/rules.d/50-stm32f4.rules

Nach der Eingabe eures Passwortes öffnet sich ein Texteditor, in den ihr die folgende Zeile einfügen müsst:

ATTR{idVendor}=="0483", ATTR{idProduct}=="3748", SYMLINK+="stm32-%k", MODE="666", GROUP="plugdev"
Startet danach ein mal euren Rechner neu oder führt als root den Befehl
udevadm control --reload-rules
aus und die Regel sollte aktiv sein. Wenn ihr nun euer STM32-F4Discovery Board per USB an euren Rechner anklemmt, solltet ihr unter /dev/ einen Devicenode haben, der mit stm32- anfängt.