[linux-l] Cross-Compiler

Axel Weiß aweiss at informatik.hu-berlin.de
Sa Mai 15 18:01:53 CEST 2004


Jan-Benedict Glaw wrote:
> On Sat, 2004-05-15 13:05:18 +0200, Axel Weiß
> <aweiss at informatik.hu-berlin.de>
>
> wrote in message <200405151305.18900.aweiss at informatik.hu-berlin.de>:
> > nach langen Bemühungen habe ich jetzt die Quellen für gcc, der Infineon's
> > TriCore unterstützt, bekommen.
> >
> > Leider ist nur sehr wenig über den build-Vorgang für Cross-Compiler
> > dokumentiert, zum TriCore *gar nichts*, so daß ich momentan ziemlich auf
> > mich allein gestellt bin.
>
> Du brauchst zumindest den Target-Namen, der sollte sich aber bei der
> Lektüre des ./gcc/configure-Scripts ergeben.
>
> Handelt es sich dabei um ein Linux-Target?

Eigentlich nicht, ich hab' kein Linux auf dem TriCore laufen. Ich will 
TriCore-Code erzeugen, der direkt mit der Hardware redet, und brauche dafür 
eigentlich nur crt0.S. Der Compiler soll aber unter Linux arbeiten.

Mein erster Ansatz war ja auch, --target=tricore anzugeben. Mit den binutils 
kein Problem, aber beim gcc kommt nur:
        *** Configuration tricore-none not supported
(obwohl das target=tricore in gcc/configure behandelt wird; aber 
das ./configure verändert den target-Namen und hängt '-none' dran...)

Seitdem rate ich eigentlich nur, was ich tun soll. Ich habe mittlerweile über 
ein Dutzend Konfigurationen für binutils und gcc (bei beiden soll ja 'target' 
gleich sein) ausprobiert (und keine compiliert zu ende). Seltsamerweise muss 
ich, wenn die binutils mit --target=tricore-xxx-yyy konfiguriert werden, beim 
gcc angeben: --target=tricore-yyy-xxx, sonst bricht configure mit der 'not 
supported'-Meldung ab. Damit der Cross-Compiler xgcc die richtigen Tools (as, 
ld, ar, nm usw.) findet, um die Laufzeit-Bibliotheken zu erzeugen, habe ich 
im binutils-Installationsverzeichnis einen Satz static-links untergebracht, 
die im Prefix die xxx und yyy wieder umdrehen. Ich weiß aber nicht, ob ich 
damit auf dem Holzweg bin :(

Eigentlich brauche ich doch keine Laufzeit-Bibliothek - oder?

Am meisten ärgert mich, daß die erste Konfiguration (s.o.) nicht klappt. Soll 
ich jetzt im configure-Skript rumhacken, damit target=tricore nicht verändert 
wird, wenn gcc/configure aufgerufen wird?? Ich habe so meine Zweifel.

Würde mich freuen, wenn einer 'ne Idee hätte...

Gruß,
			Axel

-- 
Humboldt-Universität zu Berlin
Institut für Informatik
Signalverarbeitung und Mustererkennung
Dipl.-Inf. Axel Weiß
Rudower Chaussee 25
12489 Berlin-Adlershof
+49-30-2093-3050
** www.freesp.de **



Mehr Informationen über die Mailingliste linux-l