Microblaze Toolchain
Für den Aufbau eines vollständig geschlossenen Design Flow ist neben MB-Ref auch eine funktionstüchtige Toolchain der GNU Compiler Collection für das Linux Zielsystem notwendig. Mit Stand Q1/2012 gibt es für dieses Zielsystem noch keine ordentliche Unterstützung durch die aktuellen Up-Stream Versionen der FSF (mehr dazu).
Mit der Veröffentlichung der Patches für die GNU Binutils, den GCC und die GLIBC auf http://git.monstr.eu/git/gitweb.cgi besteht nun erstmalig die Möglichkeit, eine eigene Microblaze GNU Toolchain zu erzeugen. — Stephan Linz 2011/11/03 20:02
Wie sich in einem kurzen Gespräch mit John Williams im Februar 2012 auf der Embedded World in Nürnberg herausstellte, wird PetaLogix noch im Frühjahr 2012 eine komplett überarbeitet Toolchain auf Basis der eGLIBC veröffentlichen. Diese soll dann auch Up-Stream zur FSF gehen. — Stephan Linz 2012/04/17 20:51
Am 16. August ist nun im Spätsommer 2012 eine erste frei verfügbare Toolchain neueren Datums im Git Repository von Xilinx erschienen (http://git.xilinx.com/?p=microblaze-gnu.git). Die Verspätung ist wohl neben der Integration in eine der kommenden ISE/EDK Version 14 auch dem Umstand geschuldet, dass John Williams Firma, PetaLogix, nun ein Teil von Xilinx geworden ist. Die aktuelle Toolchain basiert auf dem GCC 4.6.2 und der eGLIBC 2.14.90 sowie dem GDB in Version 7.4.50.20120403-cvs. — Stephan Linz 2012/09/28 21:03
Nun ist ein Jahr vergangen und ich habe mir Zeit genommen, die Veröffentlichungen von Xilinx zu Nutzen und wieder eine eigene Toolchain auf Basis von Crosstool-NG zu erstellen. Bis auf den GDB, der ungetestet in Version 7.4.50.20120403-cvs verblieben ist, basiert die aktuelle Toolchain nun auf den Binutils 2.23.2 dem GCC 4.8.1 und der eGLIBC 2.18. Genutzt wurden die Linux Kernel Header aus Version 3.8.11 aus PetaLinux v2013.10. — Stephan Linz 2013/12/22 17:28
Status
Crosstool-NG Toolchain
Mit Hilfe von Crosstool-NG (Mainline HEAD) und ein paar zusätzlichen Erweiterungen können die bereitgestellten Erweiterungen von Xilinx an den GNU Tools und der Glibc für die Erzeugung einer eigenen Toolchain genutzt werden. Eine Anleitung befindet sich weiter unten. Für diese selbst erstellte Toolchain gilt: ohne Garantie, ohne Haftung für etwaiger Schäden und ohne Unterstützung jedweder Art.
Die aktuelle Ausgabe ist: v2.4
Die aktuelle PTXdist Kennung ist: MicroBlaze Tools v2.4 (crosstool-hg+unknown-20131218.161203)
Inhalt (allgemein):
- binutils 2.23.2
- gcc 4.8.1
- C/C++
- gdb 7.4.50.20120403-cvs (ungetestet)
- python interface
Inhalt für GNU/Linux ELF Toolchain (allgemein):
- kernel 3.8 (with Xilinx patches)
- eglibc 2.18
- threads: nptl
- multilib combination for:
- xl-barrel-shift (bs)
- no-xl-soft-mul (bs/m)
- xl-multiply-high (bs/m/mh)
- no-xl-soft-mul (m)
- xl-multiply-high (m/mh)
- gdb 7.4.50.20120403-cvs
- native gdb for target (ungetestet)
- gdbserver for target (ungetestet)
- dmalloc, duma, strace (ungetestet)
Inhalt für Little Endian GNU/Linux ELF Toolchain (microblazeel-xilinx-linux-gnu):
- alias cross prefixes
- microblazeel-unknown-linux-gnu
- little endian only
Inhalt für Little Endian GNU/Linux ELF Toolchain (microblaze-xilinx-linux-gnu):
- alias cross prefixes
- microblaze-unknown-linux-gnu
- big endian only
Inhalt für Bare Metall ELF Toolchain (microblaze-xilinx-elf):
- newlib 2.0.0
- threads: no
- multilib combination for:
- xl-barrel-shift (bs)
- no-xl-soft-mul (bs/m)
- xl-multiply-high (bs/m/mh)
- little-endian (bs/m/mh/le)
- little-endian (bs/m/le)
- little-endian (bs/le)
- no-xl-soft-mul (m)
- xl-multiply-high (m/mh)
- little-endian (m/mh/le)
- little-endian (m/le)
- little-endian (le)
- alias cross prefixes
- mb
- big and little endian (multilib)
Achtung: Die aktuelle Ausgabe v2.4 kann nur auf Systemen mit glibc-2.11 oder höher benutzt werden und beinhaltet den ungeprüften Debugger gdb-7.4.50.20120403-cvs, da es bisher noch keine stabile Veröffentlichungen der notwendigen Patches durch Xilinx gibt.
Xilinx Toolchain
Die Microblaze Toolchain wird durch Xilinx und PetaLogix aufbereitet und ohne Garantie, ohne Haftung für etwaiger Schäden und ohne Unterstützung jedweder Art bereitgestellt. Sie befinden sich in einem finalen Stadium und darf bei Akzeptanz der benannten Bedingungen produktiv eingesetzt werden.
Die aktuelle Ausgabe ist: v3.0
Die aktuelle PTXdist Kennung für Big Endian ist: Xilinx MicroBlaze Tools v3.0 (14.3_early.20120816)
Die aktuelle PTXdist Kennung für Little Endian ist: Xilinx MicroBlaze (LE) Tools v3.0 (14.3_early.20120816)
Achtung: Die aktuelle Ausgabe v3.0 kann sowohl auf 32-bit als auch auf 64-bit Systemen mit glibc-2.3 oder höher benutzt werden und beinhaltet wieder einen Debugger (gdb auf Kommandozeile). Diese Ausgabe sollte wieder unter älteren Systemen nutzbar sein.
Anmerkung zu v2.0: Die Ausgabe v2.0 kann nur auf 64-bit Systemen mit glibc-2.11 oder höher benutzt werden und beinhaltet keinen Debugger (gdb/Insight). Für ältere Systeme oder bei der Notwendigkeit eines funktionstüchtigen Debugger kann nur die Version v1.0 genutzt werden.
Bezugsquellen
Crosstool-NG Binärpakete
Dateiname | Dateigröße | Letzte Änderung |
---|---|---|
tools-4.8.1-mb-ctng-v2.4-x86_64.tar.bz2 | 453.1 MiB | 2013/12/18 23:14 |
tools-4.8.1-mb-ctng-v2.4-i686.tar.bz2 | 444.0 MiB | 2013/12/19 13:13 |
tools-4.1.2-mb-ctng-v1.4-x86_64.tar.bz2 | 141.6 MiB | 2011/12/20 00:33 |
tools-4.1.2-mb-ctng-v1.4-i686.tar.bz2 | 136.6 MiB | 2011/12/19 23:29 |
Alternativen
Sollten obige Links nicht funktionieren, dann bitte folgende Links nutzen:
Xilinx Binärpakete
Dateiname | Dateigröße | Letzte Änderung |
---|---|---|
tools-4.6.2-mb-xilinx-v3.0-x86_64.tar.bz2 | 101.4 MiB | 2012/09/29 20:41 |
tools-4.6.2-mb-xilinx-v3.0-i686.tar.bz2 | 96.8 MiB | 2012/09/29 19:38 |
tools-4.1.2-mb-xilinx-v2.0.tar.bz2 | 105.7 MiB | 2011/04/08 02:15 |
tools-4.1.2-mb-xilinx-v1.0.tar.bz2 | 245.3 MiB | 2011/04/08 01:11 |
Alternativen
Sollten obige Links nicht funktionieren, dann bitte folgende Links nutzen:
Entwicklung
Die Quellen erfahren eine kontinuierliche Qualitätssicherung auf Basis der Methoden einer Kontinuierlichen Integration. Es unregelmässige Übersetzungsläufe nach einem Commit im Repository. Das letzte den Qualitätskriterien entsprechende Quellpaket und die daraus resultierenden Binärpakete werden kontinuierlich an dieser Stelle veröffentlicht, erheben aber noch keinen Anspruch auf den Status einer endgültigen Freigabe.
letzte erfolgreich geprüfte Quell- und übersetzte Binärpakete
tools-4.8.1-mb-ctng
Dateiname | Dateigröße | Letzte Änderung |
---|---|---|
qa-approved/tools-4.8.1-mb-ctng-v2.4-1061.tar.bz2 | 6.0 MiB | 2013/12/18 07:38 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblazeel-xilinx-linux-gnu-for-linux64.tar.bz2 | 171.5 MiB | 2013/12/18 14:29 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblazeel-xilinx-linux-gnu-for-linux32.tar.bz2 | 168.3 MiB | 2013/12/18 10:50 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblaze-xilinx-linux-gnu-for-linux64.tar.bz2 | 170.8 MiB | 2013/12/18 12:51 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblaze-xilinx-linux-gnu-for-linux32.tar.bz2 | 167.5 MiB | 2013/12/18 09:37 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblaze-xilinx-elf-for-linux64.tar.bz2 | 107.9 MiB | 2013/12/18 11:37 |
builds/tools-4.8.1-mb-ctng-v2.4-1061-microblaze-xilinx-elf-for-linux32.tar.bz2 | 105.5 MiB | 2013/12/18 08:24 |
tools-4.6.4-mb-ctng
Dateiname | Dateigröße | Letzte Änderung |
---|---|---|
qa-approved/tools-4.6.4-mb-ctng-v2.1a-1021.tar.bz2 | 5.4 MiB | 2013/08/03 09:11 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblazeel-xilinx-linux-gnu-for-linux64.tar.bz2 | 142.9 MiB | 2013/08/03 14:57 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblazeel-xilinx-linux-gnu-for-linux32.tar.bz2 | 140.0 MiB | 2013/08/03 12:03 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblaze-xilinx-linux-gnu-for-linux64.tar.bz2 | 142.6 MiB | 2013/08/03 13:51 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblaze-xilinx-linux-gnu-for-linux32.tar.bz2 | 139.7 MiB | 2013/08/03 10:55 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblaze-xilinx-elf-for-linux64.tar.bz2 | 87.8 MiB | 2013/08/03 12:45 |
builds/tools-4.6.4-mb-ctng-v2.1a-1021-microblaze-xilinx-elf-for-linux32.tar.bz2 | 85.6 MiB | 2013/08/03 09:50 |
tools-4.1.2-mb-ctng
Dateiname | Dateigröße | Letzte Änderung |
---|---|---|
qa-approved/tools-4.1.2-mb-ctng-v1.4-12202.tar.bz2 | 3.1 MiB | 2013/07/20 09:51 |
builds/tools-4.1.2-mb-ctng-v1.4-12202-microblazeel-unknown-linux-gnu-for-linux64.tar.bz2 | 70.6 MiB | 2013/07/20 12:25 |
builds/tools-4.1.2-mb-ctng-v1.4-12202-microblazeel-unknown-linux-gnu-for-linux32.tar.bz2 | 69.0 MiB | 2013/07/20 11:07 |
builds/tools-4.1.2-mb-ctng-v1.4-12202-microblaze-unknown-linux-gnu-for-linux64.tar.bz2 | 70.0 MiB | 2013/07/20 11:46 |
builds/tools-4.1.2-mb-ctng-v1.4-12202-microblaze-unknown-linux-gnu-for-linux32.tar.bz2 | 68.5 MiB | 2013/07/20 10:35 |
Repositories
Arbeiten an Crosstool-NG:
Alle Projektdaten werden bei github.com gepflegt.
Veraltet: Die Projektdaten bei Gitorious (heute Gitlab) auf gitorious.org sind veraltet und können je nach Politik durch Gitlab auch einfach ohne Vorankündigung gelöscht werden.
Patches von der TU Enidhoven:
gitorious.org (Kopie, veraltet, könnte verschwinden):
Patches von PetaLogix:
gitorious.org (Kopie, veraltet, könnte verschwinden):
git.monstr.eu (veraltet, nicht mehr vorhanden):
Xilinx Binärpakete:
Letzte Änderungen
Änderungen an Crosstool-NG:
Patches von der TU Enidhoven:
gdb-72-microblaze (Kopie, veraltet)
Änderungen von PetaLogix:
binutils-2161-microblaze (Kopie, veraltet)
gcc-412-microblaze (Kopie, veraltet)
glibc-236-microblaze (Kopie, veraltet)
gdb-65-microblaze (Kopie, veraltet)
binutils.git (veraltet, nicht mehr vorhanden)
gcc.git (veraltet, nicht mehr vorhanden)
glibc.git (veraltet, nicht mehr vorhanden)
Xilinx Binärpakete:
microblaze_v2.0.git (veraltet, nicht mehr vorhanden)
microblaze_v2.0_le.git (veraltet, nicht mehr vorhanden)
Anleitung zur Übersetzung
Crosstool-NG
Crosstoll-NG ist ein bekanntes Werkzeug zur Übersetzung von GNU Toolchains für verschiedene Prozessoren wie ARM, PowerPC, MIPS, x86 und viele mehr. Die Nutzung für Microblaze ist nicht neu wurde aber bisher nur zum Teil als offizielle Unterstützung eingepflegt. Nachdem PetaLogix seit Februar 2011 und Xilinx seit Ende 2012 alle notwendigen Patches für die GNU Binutils, den GCC und die (e)GLIBC veröffentlichen, habe ich für meine Arbeiten eine eigenen Konfigurationsumgebung für Microbalze erstellt und auf Gitorious als Git Repository veröffentlicht.
Die Übersetzung erfolgt in mehreren einzelnen Schritten, wobei zunächst Grosstool-NG für die lokale Benutzung vorbereitet werden muss, dann die drei Toolchains für Big und Little Endian übersetzt und abschließend die Ergebnisse eingepackt werden. Im Verlauf der Übersetzung einer GNU Toolchain müssen verschiedene Zwischenergebnisse bereits in eine gültige Laufzeitumgebung installiert werden. Die in Crosstoll-NG hinterlegten Konfigurationen für die drei Microblaze Toolchains sind so eingestellt, dass diese Installationen unterhalb von /tmp
erfolgen. Somit ist auf ausreichend Plattenplatz in diesem Bereich zu achten (ca. 2,5GB). Je nach Leistungsfähigkeit der benutzen Maschine können Übersetzungszeiten von mehr als einer Stunde erwartet werden. Ein gutes Buch, viel Kaffee oder auch ein nicht aufgeräumtes Büro werden da sehr nützlich.
Vorbereitung
- Crosstool-NG mit den enthaltenen Erweiterungen für Microblaze von meinem Git Repository herunterladen:
user@host: cd /tmp user@host: git clone git://gitorious.org/oselas/crosstool-ng.git
Cloning into 'crosstool-ng'... remote: Counting objects: 24387, done. remote: Compressing objects: 100% (8932/8932), done. remote: Total 24387 (delta 15906), reused 23241 (delta 14944) Receiving objects: 100% (24387/24387), 21.51 MiB | 205.00 KiB/s, done. Resolving deltas: 100% (15906/15906), done. Checking connectivity... done
- Zweig der Microblaze Erweiterungen herausholen:
user@host: cd crosstool-ng user@host: git checkout -b build crosstool-ng-microblaze-v2.4
Switched to a new branch 'build'
- Crosstol-NG für die lokale Benutzung konfigurieren und …:
user@host: ./bootstrap
Running autoconf... Setting up submodules Done. You may now run: ./configure
user@host: ./configure --enable-local
checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for a sed that does not truncate output... /bin/sed checking whether sed understands -r -i -e... yes checking whether ln -s works... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking how to run the C preprocessor... gcc -E checking for ranlib... ranlib checking for objcopy... objcopy checking for absolute path to objcopy... /usr/bin/objcopy checking for objdump... objdump checking for absolute path to objdump... /usr/bin/objdump checking for readelf... readelf checking for absolute path to readelf... /usr/bin/readelf checking for gperf... gperf checking for absolute path to gperf... /usr/bin/gperf checking for bison... bison checking for flex... flex checking for makeinfo... makeinfo checking for cut... cut checking for stat... stat checking for readlink... readlink checking for wget... wget checking for tar... tar checking for gzip... gzip checking for bzip2... bzip2 checking for patch... /usr/bin/patch checking for bash >= 3.1... /bin/bash checking for GNU awk... /usr/bin/awk checking for GNU make >= 3.80... /usr/bin/make checking whether /usr/bin/make sets $(MAKE)... yes checking for GNU libtool >= 1.5.26... /usr/bin/libtool checking for GNU libtoolize >= 1.5.26... /usr/bin/libtoolize checking for GNU automake >= 1.10... /usr/bin/automake checking for xz... xz checking for cvs... cvs checking for svn... svn checking for inline... inline checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible malloc... yes checking for stdlib.h... (cached) yes checking for GNU libc compatible realloc... yes checking for working alloca.h... yes checking for alloca... yes checking libintl.h usability... yes checking libintl.h presence... yes checking for libintl.h... yes checking whether gettext is declared... yes checking ncurses/ncurses.h usability... no checking ncurses/ncurses.h presence... no checking for ncurses/ncurses.h... no checking ncurses/curses.h usability... no checking ncurses/curses.h presence... no checking for ncurses/curses.h... no checking ncursesw/curses.h usability... yes checking ncursesw/curses.h presence... yes checking for ncursesw/curses.h... yes checking for library containing initscr... -lncursesw configure: overiding all of --prefix and the likes, because --enable-local was set configure: creating ./config.status config.status: creating Makefile
- … und erstellen:
user@host: make
SED 'ct-ng' SED 'scripts/crosstool-NG.sh' SED 'scripts/saveSample.sh' SED 'scripts/showTuple.sh' GEN 'config/configure.in' GEN 'paths.mk' GEN 'paths.sh' DEP 'nconf.gui.dep' DEP 'nconf.dep' DEP 'lxdialog/yesno.dep' DEP 'lxdialog/util.dep' DEP 'lxdialog/textbox.dep' DEP 'lxdialog/menubox.dep' DEP 'lxdialog/inputbox.dep' DEP 'lxdialog/checklist.dep' DEP 'mconf.dep' DEP 'conf.dep' BISON 'zconf.tab.c' GPERF 'zconf.hash.c' LEX 'lex.zconf.c' DEP 'zconf.tab.dep' CC 'zconf.tab.o' CC 'conf.o' LD 'conf' CC 'lxdialog/checklist.o' CC 'lxdialog/inputbox.o' CC 'lxdialog/menubox.o' CC 'lxdialog/textbox.o' CC 'lxdialog/util.o' CC 'lxdialog/yesno.o' CC 'mconf.o' LD 'mconf' CC 'nconf.o' CC 'nconf.gui.o' LD 'nconf' SED 'docs/ct-ng.1' GZIP 'docs/ct-ng.1.gz'
Big Endian Toolchain (microblaze-xilinx-linux-gnu)
- Konfiguration auswählen:
user@host: ./ct-ng microblaze-xilinx-linux-gnu
MKDIR config.gen IN config.gen/arch.in IN config.gen/kernel.in IN config.gen/cc.in IN config.gen/binutils.in IN config.gen/libc.in IN config.gen/debug.in CONF config/config.in # # configuration saved # *********************************************************** Initially reported by: Stephan Linz URL: http://www.li-pro.de/xilinx_mb/toolchain Comment: based on David Holsgroves reporting (www.xilinx.com) *********************************************************** WARNING! This sample may enable experimental features. Please be sure to review the configuration prior to building and using your toolchain! Now, you have been warned! *********************************************************** Now configured for "microblaze-xilinx-linux-gnu"
- Toolchain übersetzen:
user@host: ./ct-ng build
[INFO ] Performing some trivial sanity checks [INFO ] Build started 20131218.161307 [INFO ] Building environment variables [EXTRA] Preparing working directories [EXTRA] Installing user-supplied crosstool-NG configuration [EXTRA] Installing PTXdist appropriability [EXTRA] ================================================================= [EXTRA] Dumping internal crosstool-NG configuration [EXTRA] Building a toolchain for: [EXTRA] build = x86_64-unknown-linux-gnu [EXTRA] host = x86_64-unknown-linux-gnu [EXTRA] target = microblaze-xilinx-linux-gnu [EXTRA] Dumping internal crosstool-NG configuration: done in 0.07s (at 00:01) [INFO ] ================================================================= [INFO ] Retrieving needed toolchain components' tarballs [INFO ] Retrieving needed toolchain components' tarballs: done in 0.43s (at 00:02) [INFO ] ================================================================= [INFO ] Extracting and patching toolchain components [EXTRA] Extracting 'linux-3.8.11' [EXTRA] Patching 'linux-3.8.11' [EXTRA] Extracting 'gmp-5.1.1' [EXTRA] Patching 'gmp-5.1.1' [EXTRA] Extracting 'mpfr-3.1.2' [EXTRA] Patching 'mpfr-3.1.2' [EXTRA] Extracting 'mpc-1.0.1' [EXTRA] Patching 'mpc-1.0.1' [EXTRA] Extracting 'binutils-2.23.2' [EXTRA] Patching 'binutils-2.23.2' [EXTRA] Extracting 'gcc-4.8.1' [EXTRA] Patching 'gcc-4.8.1' [EXTRA] Extracting 'eglibc-2_18' [EXTRA] Patching 'eglibc-2_18' [EXTRA] Extracting 'dmalloc-5.5.2' [EXTRA] Patching 'dmalloc-5.5.2' [EXTRA] Extracting 'duma_2_5_15' [EXTRA] Patching 'duma-2_5_15' [EXTRA] Extracting 'gdb-7.4.1' [EXTRA] Patching 'gdb-7.4.1' [EXTRA] Extracting 'ncurses-5.9' [EXTRA] Patching 'ncurses-5.9' [EXTRA] Extracting 'expat-2.1.0' [EXTRA] Patching 'expat-2.1.0' [EXTRA] Extracting 'strace-4.8' [EXTRA] Patching 'strace-4.8' [INFO ] Extracting and patching toolchain components: done in 56.92s (at 00:59) [INFO ] ================================================================= [INFO ] Installing GMP for host [EXTRA] Configuring GMP [EXTRA] Building GMP [EXTRA] Installing GMP [INFO ] Installing GMP for host: done in 60.86s (at 02:00) [INFO ] ================================================================= [INFO ] Installing MPFR for host [EXTRA] Configuring MPFR [EXTRA] Building MPFR [EXTRA] Installing MPFR [INFO ] Installing MPFR for host: done in 13.32s (at 02:13) [INFO ] ================================================================= [INFO ] Installing MPC for host [EXTRA] Configuring MPC [EXTRA] Building MPC [EXTRA] Installing MPC [INFO ] Installing MPC for host: done in 6.72s (at 02:20) [INFO ] ================================================================= [INFO ] Installing binutils for host [EXTRA] Configuring binutils [EXTRA] Building binutils [EXTRA] Installing binutils [INFO ] Installing binutils for host: done in 35.33s (at 02:55) [INFO ] ================================================================= [INFO ] Installing pass-1 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing pass-1 core C compiler: done in 120.63s (at 04:56) [INFO ] ================================================================= [INFO ] Installing kernel headers [EXTRA] Installing kernel headers [EXTRA] Checking installed headers [INFO ] Installing kernel headers: done in 5.71s (at 05:01) [INFO ] ================================================================= [INFO ] Installing C library headers & start files [EXTRA] Configuring C library [EXTRA] Installing C library headers [EXTRA] Installing C library start files [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs': done in 6.25s (at 05:20) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='m': done in 5.99s (at 05:26) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m/mh' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='m/mh': done in 6.24s (at 05:32) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs/m': done in 5.99s (at 05:38) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m/mh' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs/m/mh': done in 5.94s (at 05:44) [INFO ] Installing C library headers & start files: done in 43.02s (at 05:44) [INFO ] ================================================================= [INFO ] Installing pass-2 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing pass-2 core C compiler: done in 180.45s (at 08:45) [INFO ] ================================================================= [INFO ] Installing C library [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs': done in 168.23s (at 14:21) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='m': done in 164.05s (at 17:05) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m/mh' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='m/mh': done in 158.82s (at 19:44) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs/m': done in 157.74s (at 22:22) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m/mh' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs/m/mh': done in 161.34s (at 25:03) [INFO ] Installing C library: done in 978.55s (at 25:03) [INFO ] ================================================================= [INFO ] Installing final compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing final compiler: done in 400.96s (at 31:44) [INFO ] ================================================================= [INFO ] Installing binutils for target [EXTRA] Configuring binutils for target [EXTRA] Building binutils' libraries (libiberty bfd) for target [EXTRA] Installing binutils' libraries (libiberty bfd) for target [EXTRA] Remove some useless .la files [INFO ] Installing binutils for target: done in 34.11s (at 32:18) [INFO ] ================================================================= [INFO ] Installing dmalloc [EXTRA] Configuring dmalloc [EXTRA] Building dmalloc [EXTRA] Installing dmalloc [INFO ] Installing dmalloc: done in 7.97s (at 32:26) [INFO ] ================================================================= [INFO ] Installing D.U.M.A. [EXTRA] Copying sources [EXTRA] Building libraries 'libduma.a libduma.so.0.0.0' [EXTRA] Installing libraries 'libduma.a libduma.so.0.0.0' [EXTRA] Installing shared library link [EXTRA] Installing wrapper script [INFO ] Installing D.U.M.A.: done in 0.72s (at 32:27) [INFO ] ================================================================= [INFO ] Installing cross-gdb [EXTRA] Configuring cross-gdb [EXTRA] Building cross-gdb [EXTRA] Installing cross-gdb [EXTRA] Installing '.gdbinit' template [INFO ] Installing cross-gdb: done in 70.12s (at 33:37) [INFO ] ================================================================= [INFO ] Installing native gdb [EXTRA] Building static target ncurses [EXTRA] Building static target expat [EXTRA] Configuring native gdb [EXTRA] Building native gdb [EXTRA] Installing native gdb [INFO ] Installing native gdb: done in 103.90s (at 35:21) [INFO ] ================================================================= [INFO ] Installing gdbserver [EXTRA] Configuring gdbserver [EXTRA] Building gdbserver [EXTRA] Installing gdbserver [INFO ] Installing gdbserver: done in 6.98s (at 35:28) [INFO ] ================================================================= [INFO ] Installing strace [EXTRA] Configuring strace [EXTRA] Building strace [EXTRA] Installing strace [INFO ] Installing strace: done in 14.36s (at 35:43) [INFO ] ================================================================= [INFO ] Cleaning-up the toolchain's directory [EXTRA] Installing the populate helper [EXTRA] Installing a cross-ldd helper [EXTRA] Creating toolchain aliases [EXTRA] Removing access to the build system tools [INFO ] Cleaning-up the toolchain's directory: done in 0.27s (at 35:43) [INFO ] Build completed at 20131218.164850 [INFO ] (elapsed: 35:42.85) [INFO ] Finishing installation (may take a few seconds)...
- Übersetzungsumgebung aufräumen:
user@host: ./ct-ng distclean
CLEAN scripts CLEAN config CLEAN config.gen CLEAN log CLEAN .config CLEAN build dir
Little Endian Toolchain (microblazeel-xilinx-linux-gnu)
- Konfiguration auswählen:
user@host: ./ct-ng microblazeel-xilinx-linux-gnu
MKDIR config.gen IN config.gen/arch.in IN config.gen/kernel.in IN config.gen/cc.in IN config.gen/binutils.in IN config.gen/libc.in IN config.gen/debug.in CONF config/config.in # # configuration saved # *********************************************************** Initially reported by: Stephan Linz URL: http://www.li-pro.de/xilinx_mb/toolchain Comment: based on David Holsgroves reporting (www.xilinx.com) *********************************************************** WARNING! This sample may enable experimental features. Please be sure to review the configuration prior to building and using your toolchain! Now, you have been warned! *********************************************************** Now configured for "microblazeel-xilinx-linux-gnu"
- Toolchain übersetzen:
user@host: ./ct-ng build
[INFO ] Performing some trivial sanity checks [INFO ] Build started 20131218.165115 [INFO ] Building environment variables [EXTRA] Preparing working directories [EXTRA] Installing user-supplied crosstool-NG configuration [EXTRA] Installing PTXdist appropriability [EXTRA] ================================================================= [EXTRA] Dumping internal crosstool-NG configuration [EXTRA] Building a toolchain for: [EXTRA] build = x86_64-unknown-linux-gnu [EXTRA] host = x86_64-unknown-linux-gnu [EXTRA] target = microblazeel-xilinx-linux-gnu [EXTRA] Dumping internal crosstool-NG configuration: done in 0.05s (at 00:02) [INFO ] ================================================================= [INFO ] Retrieving needed toolchain components' tarballs [INFO ] Retrieving needed toolchain components' tarballs: done in 0.50s (at 00:02) [INFO ] ================================================================= [INFO ] Extracting and patching toolchain components [EXTRA] Extracting 'linux-3.8.11' [EXTRA] Patching 'linux-3.8.11' [EXTRA] Extracting 'gmp-5.1.1' [EXTRA] Patching 'gmp-5.1.1' [EXTRA] Extracting 'mpfr-3.1.2' [EXTRA] Patching 'mpfr-3.1.2' [EXTRA] Extracting 'mpc-1.0.1' [EXTRA] Patching 'mpc-1.0.1' [EXTRA] Extracting 'binutils-2.23.2' [EXTRA] Patching 'binutils-2.23.2' [EXTRA] Extracting 'gcc-4.8.1' [EXTRA] Patching 'gcc-4.8.1' [EXTRA] Extracting 'eglibc-2_18' [EXTRA] Patching 'eglibc-2_18' [EXTRA] Extracting 'dmalloc-5.5.2' [EXTRA] Patching 'dmalloc-5.5.2' [EXTRA] Extracting 'duma_2_5_15' [EXTRA] Patching 'duma-2_5_15' [EXTRA] Extracting 'gdb-7.4.1' [EXTRA] Patching 'gdb-7.4.1' [EXTRA] Extracting 'ncurses-5.9' [EXTRA] Patching 'ncurses-5.9' [EXTRA] Extracting 'expat-2.1.0' [EXTRA] Patching 'expat-2.1.0' [EXTRA] Extracting 'strace-4.8' [EXTRA] Patching 'strace-4.8' [INFO ] Extracting and patching toolchain components: done in 61.35s (at 01:04) [INFO ] ================================================================= [INFO ] Installing GMP for host [EXTRA] Configuring GMP [EXTRA] Building GMP [EXTRA] Installing GMP [INFO ] Installing GMP for host: done in 51.21s (at 01:55) [INFO ] ================================================================= [INFO ] Installing MPFR for host [EXTRA] Configuring MPFR [EXTRA] Building MPFR [EXTRA] Installing MPFR [INFO ] Installing MPFR for host: done in 12.83s (at 02:08) [INFO ] ================================================================= [INFO ] Installing MPC for host [EXTRA] Configuring MPC [EXTRA] Building MPC [EXTRA] Installing MPC [INFO ] Installing MPC for host: done in 6.52s (at 02:14) [INFO ] ================================================================= [INFO ] Installing binutils for host [EXTRA] Configuring binutils [EXTRA] Building binutils [EXTRA] Installing binutils [INFO ] Installing binutils for host: done in 34.46s (at 02:49) [INFO ] ================================================================= [INFO ] Installing pass-1 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing pass-1 core C compiler: done in 103.29s (at 04:32) [INFO ] ================================================================= [INFO ] Installing kernel headers [EXTRA] Installing kernel headers [EXTRA] Checking installed headers [INFO ] Installing kernel headers: done in 5.84s (at 04:38) [INFO ] ================================================================= [INFO ] Installing C library headers & start files [EXTRA] Configuring C library [EXTRA] Installing C library headers [EXTRA] Installing C library start files [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs': done in 6.22s (at 04:56) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='m': done in 6.39s (at 05:02) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m/mh' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='m/mh': done in 6.56s (at 05:09) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs/m': done in 6.42s (at 05:15) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m/mh' [EXTRA] Configuring C library [EXTRA] Installing C library start files [INFO ] Building for multilib subdir='bs/m/mh': done in 5.77s (at 05:21) [INFO ] Installing C library headers & start files: done in 42.92s (at 05:21) [INFO ] ================================================================= [INFO ] Installing pass-2 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing pass-2 core C compiler: done in 151.54s (at 07:52) [INFO ] ================================================================= [INFO ] Installing C library [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs': done in 170.03s (at 13:30) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='m': done in 170.13s (at 16:20) [INFO ] ================================================================= [INFO ] Building for multilib subdir='m/mh' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='m/mh': done in 183.91s (at 19:24) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs/m': done in 165.67s (at 22:10) [INFO ] ================================================================= [INFO ] Building for multilib subdir='bs/m/mh' [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [EXTRA] Fixing up multilib location [INFO ] Building for multilib subdir='bs/m/mh': done in 171.06s (at 25:01) [INFO ] Installing C library: done in 1028.48s (at 25:01) [INFO ] ================================================================= [INFO ] Installing final compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [INFO ] Installing final compiler: done in 395.97s (at 31:37) [INFO ] ================================================================= [INFO ] Installing binutils for target [EXTRA] Configuring binutils for target [EXTRA] Building binutils' libraries (libiberty bfd) for target [EXTRA] Installing binutils' libraries (libiberty bfd) for target [EXTRA] Remove some useless .la files [INFO ] Installing binutils for target: done in 35.31s (at 32:12) [INFO ] ================================================================= [INFO ] Installing dmalloc [EXTRA] Configuring dmalloc [EXTRA] Building dmalloc [EXTRA] Installing dmalloc [INFO ] Installing dmalloc: done in 8.04s (at 32:20) [INFO ] ================================================================= [INFO ] Installing D.U.M.A. [EXTRA] Copying sources [EXTRA] Building libraries 'libduma.a libduma.so.0.0.0' [EXTRA] Installing libraries 'libduma.a libduma.so.0.0.0' [EXTRA] Installing shared library link [EXTRA] Installing wrapper script [INFO ] Installing D.U.M.A.: done in 0.75s (at 32:21) [INFO ] ================================================================= [INFO ] Installing cross-gdb [EXTRA] Configuring cross-gdb [EXTRA] Building cross-gdb [EXTRA] Installing cross-gdb [EXTRA] Installing '.gdbinit' template [INFO ] Installing cross-gdb: done in 69.80s (at 33:31) [INFO ] ================================================================= [INFO ] Installing native gdb [EXTRA] Building static target ncurses [EXTRA] Building static target expat [EXTRA] Configuring native gdb [EXTRA] Building native gdb [EXTRA] Installing native gdb [INFO ] Installing native gdb: done in 105.52s (at 35:16) [INFO ] ================================================================= [INFO ] Installing gdbserver [EXTRA] Configuring gdbserver [EXTRA] Building gdbserver [EXTRA] Installing gdbserver [INFO ] Installing gdbserver: done in 6.56s (at 35:23) [INFO ] ================================================================= [INFO ] Installing strace [EXTRA] Configuring strace [EXTRA] Building strace [EXTRA] Installing strace [INFO ] Installing strace: done in 14.19s (at 35:37) [INFO ] ================================================================= [INFO ] Cleaning-up the toolchain's directory [EXTRA] Installing the populate helper [EXTRA] Installing a cross-ldd helper [EXTRA] Creating toolchain aliases [EXTRA] Removing access to the build system tools [INFO ] Cleaning-up the toolchain's directory: done in 0.30s (at 35:37) [INFO ] Build completed at 20131218.172652 [INFO ] (elapsed: 35:37.51) [INFO ] Finishing installation (may take a few seconds)...
- Übersetzungsumgebung aufräumen:
user@host: ./ct-ng distclean
CLEAN scripts CLEAN config CLEAN config.gen CLEAN log CLEAN .config CLEAN build dir
Both Endian Toolchain (microblaze-xilinx-elf)
- Konfiguration auswählen:
user@host: ./ct-ng microblaze-xilinx-elf
MKDIR config.gen IN config.gen/arch.in IN config.gen/kernel.in IN config.gen/cc.in IN config.gen/binutils.in IN config.gen/libc.in IN config.gen/debug.in CONF config/config.in # # configuration saved # *********************************************************** Initially reported by: Stephan Linz URL: http://www.li-pro.de/xilinx_mb/toolchain Comment: based on David Holsgroves reporting (www.xilinx.com) *********************************************************** WARNING! This sample may enable experimental features. Please be sure to review the configuration prior to building and using your toolchain! Now, you have been warned! *********************************************************** Now configured for "microblaze-xilinx-elf"
- Toolchain übersetzen:
user@host: ./ct-ng build
[INFO ] Performing some trivial sanity checks [INFO ] Build started 20131218.172927 [INFO ] Building environment variables [EXTRA] Preparing working directories [EXTRA] Installing user-supplied crosstool-NG configuration [EXTRA] Installing PTXdist appropriability [EXTRA] ================================================================= [EXTRA] Dumping internal crosstool-NG configuration [EXTRA] Building a toolchain for: [EXTRA] build = x86_64-unknown-linux-gnu [EXTRA] host = x86_64-unknown-linux-gnu [EXTRA] target = microblaze-xilinx-elf [EXTRA] Dumping internal crosstool-NG configuration: done in 0.04s (at 00:01) [INFO ] ================================================================= [INFO ] Retrieving needed toolchain components' tarballs [INFO ] Retrieving needed toolchain components' tarballs: done in 0.21s (at 00:02) [INFO ] ================================================================= [INFO ] Extracting and patching toolchain components [EXTRA] Extracting 'gmp-5.1.1' [EXTRA] Patching 'gmp-5.1.1' [EXTRA] Extracting 'mpfr-3.1.2' [EXTRA] Patching 'mpfr-3.1.2' [EXTRA] Extracting 'mpc-1.0.1' [EXTRA] Patching 'mpc-1.0.1' [EXTRA] Extracting 'binutils-2.23.2' [EXTRA] Patching 'binutils-2.23.2' [EXTRA] Extracting 'gcc-4.8.1' [EXTRA] Patching 'gcc-4.8.1' [EXTRA] Extracting 'newlib-2.0.0' [EXTRA] Patching 'newlib-2.0.0' [EXTRA] Extracting 'gdb-7.4.1' [EXTRA] Patching 'gdb-7.4.1' [INFO ] Extracting and patching toolchain components: done in 34.51s (at 00:36) [INFO ] ================================================================= [INFO ] Installing GMP for host [EXTRA] Configuring GMP [EXTRA] Building GMP [EXTRA] Installing GMP [INFO ] Installing GMP for host: done in 43.82s (at 01:20) [INFO ] ================================================================= [INFO ] Installing MPFR for host [EXTRA] Configuring MPFR [EXTRA] Building MPFR [EXTRA] Installing MPFR [INFO ] Installing MPFR for host: done in 12.81s (at 01:33) [INFO ] ================================================================= [INFO ] Installing MPC for host [EXTRA] Configuring MPC [EXTRA] Building MPC [EXTRA] Installing MPC [INFO ] Installing MPC for host: done in 10.51s (at 01:43) [INFO ] ================================================================= [INFO ] Installing binutils for host [EXTRA] Configuring binutils [EXTRA] Building binutils [EXTRA] Installing binutils [INFO ] Installing binutils for host: done in 35.27s (at 02:19) [INFO ] ================================================================= [INFO ] Installing pass-1 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mlittle-endian --> le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mno-xl-soft-mul -mlittle-endian --> m/le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> m/mh/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mlittle-endian --> bs/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mlittle-endian --> bs/m/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> bs/m/mh/le/ [INFO ] Installing pass-1 core C compiler: done in 100.82s (at 04:00) [INFO ] ================================================================= [INFO ] Installing C library headers & start files [INFO ] Installing C library headers & start files: done in 0.02s (at 04:00) [INFO ] ================================================================= [INFO ] Installing pass-2 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mlittle-endian --> le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mno-xl-soft-mul -mlittle-endian --> m/le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> m/mh/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mlittle-endian --> bs/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mlittle-endian --> bs/m/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> bs/m/mh/le/ [INFO ] Installing pass-2 core C compiler: done in 164.68s (at 06:44) [INFO ] ================================================================= [INFO ] Installing C library [EXTRA] Configuring C library [EXTRA] Building C library [EXTRA] Installing C library [INFO ] Installing C library: done in 245.22s (at 10:49) [INFO ] ================================================================= [INFO ] Installing final compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [EXTRA] Remove some useless .la files [EXTRA] gcc configured with these multilibs (besides the default): [EXTRA] -mxl-barrel-shift --> bs/ [EXTRA] -mno-xl-soft-mul --> m/ [EXTRA] -mlittle-endian --> le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high --> m/mh/ [EXTRA] -mno-xl-soft-mul -mlittle-endian --> m/le/ [EXTRA] -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> m/mh/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul --> bs/m/ [EXTRA] -mxl-barrel-shift -mlittle-endian --> bs/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high --> bs/m/mh/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mlittle-endian --> bs/m/le/ [EXTRA] -mxl-barrel-shift -mno-xl-soft-mul -mxl-multiply-high -mlittle-endian --> bs/m/mh/le/ [INFO ] Installing final compiler: done in 491.87s (at 19:01) [INFO ] ================================================================= [INFO ] Installing cross-gdb [EXTRA] Configuring cross-gdb [EXTRA] Building cross-gdb [EXTRA] Installing cross-gdb [EXTRA] Installing '.gdbinit' template [INFO ] Installing cross-gdb: done in 71.21s (at 20:13) [INFO ] ================================================================= [INFO ] Cleaning-up the toolchain's directory [EXTRA] Creating toolchain aliases [EXTRA] Removing access to the build system tools [INFO ] Cleaning-up the toolchain's directory: done in 0.32s (at 20:13) [INFO ] Build completed at 20131218.174940 [INFO ] (elapsed: 20:12.56) [INFO ] Finishing installation (may take a few seconds)...
- Übersetzungsumgebung aufräumen:
user@host: ./ct-ng distclean
CLEAN scripts CLEAN config CLEAN config.gen CLEAN log CLEAN .config CLEAN build dir
Ergebnis einpacken und installieren
- Crosstool-NG hat beide Toolchains unter
/tmp/tools-4.8.1-mb-ctng-v2.4
installiert, diese müssen eingepackt werden:user@host: cd /tmp user@host: tar -cj --owner=root --group=root -f tools-4.8.1-mb-ctng-v2.4-$(uname -m).tar.bz2 tools-4.8.1-mb-ctng-v2.4
- Das entstandene Archiv muss nun an einen sicheren Ort verschoben werden, dann kann das Verzeichnis gelöscht werden:
user@host: mv tools-4.8.1-mb-ctng-v2.4-$(uname -m).tar.bz2 <safe_location> user@host: rm -rf tools-4.8.1-mb-ctng-v2.4
- Die Toolchains können für die Benutzung nach
/opt
installiert werden:user@host: cd /opt user@host: sudo tar -xjf <safe_location>/tools-4.8.1-mb-ctng-v2.4-$(uname -m).tar.bz2