Peter Dannegger schrieb:
> Unter Windows kann man einfach die PATH-Variable auf das Verzeichnis der
> gewünschten Compilerinstallation setzen.
>
> Man legt sich entsprechende Shortcuts auf den Desktop, die den PATH
> setzen, das Tool aufrufen und danach den alten PATH wieder restaurieren.
Solche Umstände sind unter Linux oder Unix-Systemen völlig unnötig. gcc
unterstützt schon seit jeher die Parallelinstallation beliebig vieler
Versionen und Zielarchitekturen.
Das Programm "gcc" ist nur ein Wrapper, der den eigentlichen gcc
aufruft, und zwar die Default-Version für die Default-Architektur. Man
kann aber jederzeit gezielt einen bestimmten Compiler einer gegebenen
Version und Architektur mit entsprechendem Prefix (für die Architektur)
und Postfix (für die Version) aufrufen.
Hier bei mir zum Beispiel ruft gcc etwa x86_64-linux-gnu-gcc-4.7 auf,
direkt aufrufen kann ich aber auch arm-linux-gnueabi-gcc,
arm-none-eabi-gcc-4.7.1, avr-gcc, avr-gcc-4.7.2, ... Auch die parallele
Installation von Distributionspaketen und selbst übersetzten Toolchains
in /usr/local funktioniert so einwandfrei.
Daher sieht man in Makefiles auch oft diese Variablen für die
Konfiguration am Anfang:
1 | CROSS_COMPILE :=
|
2 | CC := $(CROSS_COMPILE)gcc
|
3 | CXX := $(CROSS_COMPILE)g++
|
4 | AS := $(CROSS_COMPILE)as
|
5 | ...
|
Dann muss man nur CROSS_COMPILE setzen und bekommt so die richtige
Architektur dank des einheitlichen Namensschemas bei gcc und binutils.