Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
software:linux:emdebian:cross-toolchain [2014-05-26 08:13] – zueger1 | software:linux:emdebian:cross-toolchain [2014-08-26 17:35] (aktuell) – zueger1 |
---|
Das Emdebian Projekt stellt Cross-Toolchains für Debian basierende Linux Distributionen bereit. Die Toolchains für PowerPC und ARM wurden am NTB schon in mehreren Projekten eingesetzt. Auf der [[http://www.emdebian.org/crosstools.html | Emdebian-Homepage]] ist ersichtlich, für welche Architekturen und in welchen Versionen die Toolchains verfügbar sind. Auf dem [[http://wiki.debian.org/EmdebianToolchain | Emdebian-Wiki]] ist eine Installationsanleitung verfügbar. | Das Emdebian Projekt stellt Cross-Toolchains für Debian basierende Linux Distributionen bereit. Die Toolchains für PowerPC und ARM wurden am NTB schon in mehreren Projekten eingesetzt. Auf der [[http://www.emdebian.org/crosstools.html | Emdebian-Homepage]] ist ersichtlich, für welche Architekturen und in welchen Versionen die Toolchains verfügbar sind. Auf dem [[http://wiki.debian.org/EmdebianToolchain | Emdebian-Wiki]] ist eine Installationsanleitung verfügbar. |
| |
===== Installation der Toolchain unter Debian, Ubuntu und Linux Mint ===== | ===== Vorbereitung ===== |
Die Installation erfolgt mit folgenden Schritten: | - Schlüssel für das Emdebian-Paket-Archiv installieren: <code># apt-get install emdebian-archive-keyring</code> |
- Folgende Zeilen müssen am Schluss des Files ///etc/apt/sources.list// hinzugefügt werden: <code># -- Emdebian cross toolchains | - Emdebian-Paket-Archiv als Quelle für APT hinzufügen, indem die folgende Zeile in der Datei ///etc/apt/sources.list// am Schluss hinzugefügt wird. <file># -- Emdebian cross toolchains |
deb http://www.emdebian.org/debian/ squeeze main</code> | deb http://www.emdebian.org/debian/ wheezy main</file> |
- Root-Konsole öffnen und Repository zu apt-get hinzufügen: <code># apt-get install emdebian-archive-keyring | - Paket-Quellen neu lesen: <code># apt-get update</code> |
# apt-get update</code> Falls die Installation des Keyrings fehlschlägt, müssen die beiden apt-get Befehle erneut ausgeführt werden. | - Wird Debian 7 //Wheezy// verwendet, muss noch die ''glibc'' auf Version 2.14 oder neuer aktualisiert werden. Dazu sind folgende Schritte notwendig: |
- Installation des Cross Compilers und der Laufzeitbibliotheken (in diesem Beispiel für ARM-Prozessoren gezeigt): <code># apt-get install libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi | - Paket-Archiv für Debian Testing hinzufügen: <file># -- Debian Testing |
# apt-get install gcc-4.4-arm-linux-gnueabi </code> Dieser Befehl kann unter Wheezy fehlschlagen, Fehlermeldung:\\ ''The following packages have unmet dependencies: gcc-4.4-arm-linux-gnueabi : Depends: cpp-4.4-arm-linux-gnueabi (= 4.4.5-8) but it is not going to be installed''\\ Dann muss im File ///etc/apt/sources.list// zusätzlich folgende Zeile hinzugefügt werden: <code> deb http://mirror.switch.ch/ftp/mirror/debian squeeze main contrib non-free</code> Anschliessend muss apt-get update ausgeführt werden. Danach kann der oben fehlgeschlagene Befehl nochmals ausgeführt werden. <code># apt-get install g++-4.4-arm-linux-gnueabi uboot-mkimage libncurses5-dev linux-libc-dev-armel-cross</code> | deb http://mirror.switch.ch/ftp/mirror/debian/ testing main</file> |
- xapt via Backports installieren (für Squeeze): Hinzufügen von folgender Linie zu ///etc/apt/sources.list// <code># Backports | - Paket-Quellen neu lesen: <code>#apt-get update</code> |
deb http://mirror.switch.ch/ftp/mirror/debian-backports squeeze-backports main</code> | - GLibc6 aktualisieren: <code># apt-get -t testing install glibc6-dev</code> |
- Installation von xapt: <code># apt-get update | - Wird Ubuntu 14.04 verwendet, muss das Paket libmpc2 aus Debian Wheezy installiert werden, dazu sind folgende Schritte notwendig: |
# apt-get install xapt</code> | - Paket herunterladen: für [[https://packages.debian.org/wheezy/amd64/libmpc2/download | x86-64]] oder [[https://packages.debian.org/wheezy/i386/libmpc2/filelist | x86-32]] |
- Installation eventuell zusätzlich benötigter Libraries. | - Paket installieren((der Dateinamen des Paketes kann sich vom Beispiel unterscheiden)): <code># dpkg -i libmpc2_0.9-4_amd64.deb</code> |
| |
| ===== Toolchain für PowerPC installieren ===== |
| - Installation des Cross Compilers und der Laufzeitbibliotheken: <code># apt-get install libc6-powerpc-cross libc6-dev-powerpc-cross binutils-powerpc-linux-gnu |
| # apt-get install gcc-4.7-powerpc-linux-gnu |
| # apt-get install g++-4.7-powerpc-linux-gnu</code> |
| |
| ===== Toolchain für ARM installieren ===== |
| Anmerkung: Debian kennt drei unterschiedliche ARM-ABIs: //arm//, //armel// und //armhf//. In dieser Anleitung wird eine Toolchain für //armel// installiert. |
| - Installation des Cross Compilers und der Laufzeitbibliotheken: <code># apt-get install libc6-armel-cross libc6-dev-armel-cross binutils-arm-linux-gnueabi |
| # apt-get install gcc-4.7-arm-linux-gnueabi |
| # apt-get install g++-4.7-arm-linux-gnueabi</code> |
| - Soll ein Linux Kernel crosscompiliert werden, so werden noch weitere Bibliotheken benötigt: <code># apt-get install libncurses5-dev linux-libc-dev-armel-cross uboot-mkimage</code> |
| - Installation von xapt: <code># apt-get install xapt</code> |
| - Installation eventuell zusätzlich benötigter Bibliotheken. |