Difference between revisions of "U23 2012/Toolchain"
(Created page with "== 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...") |
|||
(5 intermediate revisions by one other user not shown) | |||
Line 2: | Line 2: | ||
Wenn ihr die Toolchain für unser Projekt selber bauen wollt, findet ihr hier eine Anleitung dazu. | 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: | + | Die Abhängigkeiten, die ihr dazu braucht, könnt ihr unter Debian-ähnlichen Linux Distributionen (hier unter Ubuntu 12.10) mit dem folgenden Befehl installieren: |
− | <pre>sudo apt-get install git libgmp-dev libmpc-dev libmpfr-dev make build-essential texinfo libusb-dev autoconf automake | + | <pre>sudo apt-get install git libgmp-dev libmpc-dev libmpfr-dev make build-essential texinfo libusb-dev libusb-1.0-0-dev autoconf automake zlib1g-dev ncurses-dev</pre> |
Bei anderen Distributionen heissen die Pakete ähnlich. Sucht einfach mal in eurem Paketmanager. | Bei anderen Distributionen heissen die Pakete ähnlich. Sucht einfach mal in eurem Paketmanager. | ||
Line 17: | Line 17: | ||
Solltet ihr einen Fehler bekommen, könnt ihr mit einem <pre>make V=1</pre> die Schritte widerholen und solltet dabei irgendwo eine Fehlermeldung ausgegeben bekommen. | Solltet ihr einen Fehler bekommen, könnt ihr mit einem <pre>make V=1</pre> die Schritte widerholen und solltet dabei irgendwo eine Fehlermeldung ausgegeben bekommen. | ||
− | Die Toolchain ist nach einem erfolgreichen Build im Ordner <pre> | + | Die Toolchain ist nach einem erfolgreichen Build im Ordner <pre>/pfad/zum/u32/Ordner/STM32-Toolchain/arm-none-eabi</pre>. Wenn ihr die Toolchain jetzt benutzen wollt, müsst ihr den Pfad noch in eure PATH-Variable aufnehmen: |
<pre>export PATH=/pfad/zum/u32/Ordner/STM32-Toolchain/arm-none-eabi/bin:$PATH</pre> | <pre>export PATH=/pfad/zum/u32/Ordner/STM32-Toolchain/arm-none-eabi/bin:$PATH</pre> | ||
+ | |||
+ | Dies müsst ihr jedes mal, wenn ihr ein neues Terminal öffnet erneut ausführen. Wenn ihr den Pfad permanent in eure PATH-Variable aufnehmen wollt, gibt es näheres dazu hier: http://wiki.ubuntuusers.de/Umgebungsvariable | ||
+ | |||
+ | Wenn alles geklappt hat, könnt ihr im STM32-Toolchain Ordner noch ein <pre>make clean</pre> ausführen, womit die temporären Dateien, die während des Kompilierens erstellt wurden, löschen könnt. Eure Toolchain selbst bleibt dabei erhalten. | ||
== udev-Regeln == | == udev-Regeln == | ||
Line 29: | Line 33: | ||
Nach der Eingabe eures Passwortes öffnet sich ein Texteditor, in den ihr die folgende Zeile einfügen müsst: | Nach der Eingabe eures Passwortes öffnet sich ein Texteditor, in den ihr die folgende Zeile einfügen müsst: | ||
<pre>ATTR{idVendor}=="0483", ATTR{idProduct}=="3748", SYMLINK+="stm32-%k", MODE="666", GROUP="plugdev"</pre> | <pre>ATTR{idVendor}=="0483", ATTR{idProduct}=="3748", SYMLINK+="stm32-%k", MODE="666", GROUP="plugdev"</pre> | ||
+ | |||
+ | Startet danach ein mal euren Rechner neu oder führt als root den Befehl <pre>udevadm control --reload-rules</pre> 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. |
Latest revision as of 13:57, 20 October 2012
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 (hier unter Ubuntu 12.10) mit dem folgenden Befehl installieren:
sudo apt-get install git libgmp-dev libmpc-dev libmpfr-dev make build-essential texinfo libusb-dev libusb-1.0-0-dev autoconf automake zlib1g-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 makeSolltet ihr einen Fehler bekommen, könnt ihr mit einem
make V=1die Schritte widerholen und solltet dabei irgendwo eine Fehlermeldung ausgegeben bekommen. Die Toolchain ist nach einem erfolgreichen Build im Ordner
/pfad/zum/u32/Ordner/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
Dies müsst ihr jedes mal, wenn ihr ein neues Terminal öffnet erneut ausführen. Wenn ihr den Pfad permanent in eure PATH-Variable aufnehmen wollt, gibt es näheres dazu hier: http://wiki.ubuntuusers.de/Umgebungsvariable
Wenn alles geklappt hat, könnt ihr im STM32-Toolchain Ordner noch einmake cleanausführen, womit die temporären Dateien, die während des Kompilierens erstellt wurden, löschen könnt. Eure Toolchain selbst bleibt dabei erhalten.
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-rulesaus 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.