gcc4.0.2 linux

Gast #284596
Lesenswert?

Hallo
Ich habe versucht, gcc4.0.2 für den AVR unter Linux zu kompilieren,
gemäss der Anleitung von:
http://www.linuxfocus.org/Deutsch/November2004/article352.shtml
../configure --target=avr --prefix=/usr/local/avr --disable-nls
make


Nun erscheinen aber die folgende Fehlermeldung:

../../gcc/config/avr/libgcc.S: Assembler messages:
../../gcc/config/avr/libgcc.S:72: Error: suffix or operands invalid for
`clr'
../../gcc/config/avr/libgcc.S:72: Error: no such instruction: `clear
result'
../../gcc/config/avr/libgcc.S:74: Error: no such instruction: `sbrc
r24,0'
../../gcc/config/avr/libgcc.S:75: Error: too many memory references for
`add'
../../gcc/config/avr/libgcc.S:76: Error: too many memory references for
`add'
../../gcc/config/avr/libgcc.S:76: Error: no such instruction: `shift
multiplicand'
../../gcc/config/avr/libgcc.S:77: Error: no such instruction: `breq
__mulqi3_exit'
../../gcc/config/avr/libgcc.S:77: Error: no such instruction: `while
multiplicand!=0'
../../gcc/config/avr/libgcc.S:78: Error: no such instruction: `lsr
r24'
../../gcc/config/avr/libgcc.S:79: Error: no such instruction: `brne
__mulqi3_loop'
../../gcc/config/avr/libgcc.S:79: Error: no such instruction: `exit if
multiplier=0'
../../gcc/config/avr/libgcc.S:81: Error: too many memory references for
`mov'
../../gcc/config/avr/libgcc.S:81: Error: no such instruction: `result
to return register'
make[2]: *** [libgcc/./_mulqi3.o] Fehler 1
make[2]: Leaving directory `/usr/local/kill/gcc-4.0.2/obj-avr/gcc'
make[1]: *** [stmp-multilib] Fehler 2
make[1]: Leaving directory `/usr/local/kill/gcc-4.0.2/obj-avr/gcc'
make: *** [all-gcc] Fehler 2
root@PCAMD:/usr/local/kill/gcc-4.0.2/obj-avr#

Hat jemand eine Idee, was ich falsch mache?

Danke, Gruss Thomas
Gast #284598
Lesenswert?

Hallo Jörg

Ich denke der Fehler war bei den Binutuls und beim Pfad... wer lesen
und tippen kann, hat Vorteile im Leben...

Ich mache mal weiter, sonst melde ich mich wieder.

Danke, Gruss Thomas
Moderator Persönliche Seite #284600
Lesenswert?

Gibb's nich mehr...

Das waren Krücken, um den Multilib-Kram (avr2 bis avr5) mit dem alten
autoconf/automake auf die Reihe zu bekommen.  Mittlerweile kannst du
das alles ganz normal mit ./configure und make behandeln.  configure
braucht noch zwei Argumente (außer den von dir gewünschten wie
wahrscheinlich --prefix), aber das sagt es dir dann schon.
Gast #284601
Lesenswert?

So, ich habe noch einmal von vorne angefangen, damit ich beim nächsten
mal noch weiss, was ich gemacht habe. Nun kommt beim kompilieren des
gcc folgender Fehler:

checking for ANSI C header files... no
checking for sys/types.h... no
checking for sys/stat.h... no
checking for stdlib.h... no
checking for string.h... no
checking for memory.h... no
checking for strings.h... no
checking for inttypes.h... no
checking for stdint.h... no
checking for unistd.h... no
checking stdio.h usability... no
checking stdio.h presence... no
checking for stdio.h... no
configure: error: Can't find stdio.h.
You must have a usable C system for the target already installed, at
least
including headers and, preferably, the library, before you can
configure
the Objective C runtime system.  If necessary, install gcc now with
`LANGUAGES=c', then the target library, then build with
`LANGUAGES=objc'.
make: *** [configure-target-libobjc] Fehler 1
root@PCAMD:/usr/local/kill/gcc-4.0.2/obj-avr#

Ich habe Knoppix 4.0 installiert und der gcc ist vorhanden und
funktioniert auch, die gesuchte Datei stdio.h ist in /usr/include
vorhanden. Was mache ich wieder falsch?
beim configure habe ich noch --libdir=/usr/include eingefügt, ohne
Erfolg.

Ich fühle mich langsam so: http://nichtlustig.de/comics/full/040816.jpg
Moderator Persönliche Seite #284602
Lesenswert?

Nu, steht doch da. ;-)

Du versuchst, Objective C zu compilieren, dafür brauchst du eine
stdio-Bibliothek des Targets, also für den AVR.  Ich denke aber,
ObjC willst du eigentlich gar nicht...

Die einfachste Methode, das nicht mit zu konfigurieren ist, dass man
sich nur die notwendigen Teile vom GCC runterlädt (core und g++).  Da
du aber offenbar das volle Archiv hast, musst du bei make angeben,
welche Sprachmodule du compilieren lassen möchtest:

make LANGUAGES="c c++"
Gast #284604
Lesenswert?

Hallo

Klappt immer noch nicht, es kommt immer noch die selbe Meldung.
Vieleicht verstehe ich die Meldung ja nicht richtig, aber
"You must have a usable C system for the target already installed, at
least"
bedeutet doch, dass ich einen C Compiler für das Zielsystem benötige,
oder nicht? Aber den will ich ja jetzt kompilieren...

Hilfe?
Moderator Persönliche Seite #284605
Lesenswert?

Nein, es bedeutet, dass er eine C-Bibliothek für das Zielsystem
haben musst.  Da diese aber natürlich erstmal einen C-Compiler
braucht, hast du ein Henne-und-Ei-Problem.

Du musst es irgendwie schaffen, nur C (oder C und C++) zu
konfigurieren.  Vielleicht ist das ja beim GCC 4.x jetzt eine
configure-Option?

Ansonsten: nimm dir nur gcc-core statt des vollen Sources, der
kann dann nur einen C-Compiler bauen.
Gast #284606
Lesenswert?

Ok, ich habe den gcc-core herunter geladen und siehe da: Es klappt!

Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke, Danke,
Danke, Danke, Danke, Danke, Danke, Danke, Danke!!!!!

:o)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren