www.mikrocontroller.net

Forum: Compiler & IDEs avr-gcc unter linux


Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo , Ich versuche seit 3 Stunden den Avr-gcc unter linux zu
installiern... doch es geht irgendwie nicht. Der erste Fehler kommt
schon während der Installation von Binutils. Ich folge einfach die
Installation-Anweisungen von Guido
(http://www.linuxfocus.org/Deutsch/November2004/art...)
Alles läuft gut bis "../configure --target=avr --prefix=/usr/local/avr
--disable-nls". Aber nachdem ich "make" mache kommt folgende Warnung:

" make:warning:File '../makefile.in' has modification time 6.1e-06s
in the future CONFIG_FILES=Makefile CONFIG_HEADERS=/bin/sn/config.satus
"

versteht jemand was das soll? was habe ich falsc gemacht?
Ich habe SUSE 8.2 installiert, binutils version ist die -2.17
Danke im Voraus

Autor: Martin #### (martin-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also :has modification time in the future
Die makefile.in wurde in der ZUKUNFT geändert. Das deutet darauf hin
dass die Computer-Uhr falsch läuft.
Aber es ist doch nur eine Warnung, die sonst nicht weiter schlimm ist.
Bricht nach dieser Warnung das Compilieren ab ?

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das compilieren geht leider nicht weiter. Die Warnung läuft so
Stundenlang und ich kann nur den Rechner neustarten. der Befehl make
install geht auch nicht.
die computer-Uhr ist schon richtig, nur das Datum ist falsch!
vielleicht deswegen? werde ich das mal ändern und nochmal versuchen.
Falls die Warnung noch kommt, was kann ich noch machen?

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank Martin, es läuft jetzt. Ich habe das Datum geändert.

Autor: Martin #### (martin-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>nur das Datum ist falsch! vielleicht deswegen?
Datum muss auch richtig sein.
>>und ich kann nur den Rechner neustarten
oh, das hört sich übel an, normalerweise reicht str-c um so was zu
beenden.
>>Falls die Warnung noch kommt, was kann ich noch machen?
Dann bin ich leider überfragt.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> die computer-Uhr ist schon richtig, nur das Datum ist falsch!

Das ist übrigens beinahe signature-verdächtig. ;-)

Was glaubst du, wo das Datum herkommt, wenn nicht aus einer Uhr?
Das Datum ist gewissermaßen weiter nichts als der 86400-Sekunden-
Überlauf der Uhr.

Autor: Martin #### (martin-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> die computer-Uhr ist schon richtig, nur das Datum ist falsch!
Ja, diesen Satz werd ich mir merken.
Das ist so was wie : Warum fährt das Auto nicht, es hat doch nur kein
Benzin.

@Christelle T.
Nur nicht böse sein.

Autor: -daniel- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
find . -exec touch {} \;

macht dir für alle Dateien einen Neuen Zeitstempel
dann sollte auch laufen

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja Ich weiß, ihr habt ja recht... Der Satz war echt blöd!
Ich habe mittlerweile Binutils installiert ohne Fehlermeldung. Ich
bekomme aber Probleme bei der Installation von avrgcc.
 " ../configure --target=avr --prefix=/usr/local/avr --disable-nls
--enable-language=c" geht gut. Nach "make" bekomme ich folgende
Fehlermeldungen:
make[3]:avr-ar: command not found
make[3]:*** [libgcc.a]Error2
make[3]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make[2]:*** [Stmp-multilib]Error2
make[2]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make[1]:*** [all-gcc]Error2
make[1]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make:***[all]Error2
linux:/home/student/Desktop/gcc-4.1.1/obj-avr/gcc #

was habe ich schon wieder falschgemacht? bitte Hilfe :(
Danke

Autor: Marco S (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zeigt "echo $PATH" irgendwas mit "/usr/local/avr/bin" an?

cu

Autor: Martin #### (martin-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Satz mir uhr ist cool.
Also was das Problemm angeht scheint es, dass /usr/local/avr/bin nicht
in der PATH ist.
Versuch folgendes, bevor du mit configure ausführst gib folgendes ein:
export PATH=/usr/local/avr/bin:$PATH

Später, damit der avr-gcc funktioniert, musst du diese Zeile entweder
in die Datei .profile in deinem Home-Verzeichnis oder in /etc/profile
einfügen.

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ich habe mittlerweile Binutils installiert ohne Fehlermeldung.

> make[3]:avr-ar: command not found

Das heißt, daß die Binutils nicht gefunden werden. Ist das Verzeichnis
$PREFIX/bin von den Binutils im $PATH?

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi
echo $PATH zeigt folgendes: "
/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:usr/bin:/usr/X1 
1R6/bin:/bin:/usr/games:opt/gnome2/bin:/opt/gnome/bin:opt/kde3/bin:/usr/ 
lib/java/jre/bin:/opt/gnome/bin
"

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also...
jetzt folgende fehlermeldungen:
...
checking for C compiler default output filename ...configure: error: C
compiler cannot create executables
See #config.log for more details.
make[1]:***[configure-target-libssp] Error1
make[1]:Leaving Directory
'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make:***[all]Error 2

Autor: Martin #### (nicht eingelogt) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese Fehlermeldung sagt mir leider gar nichts: C-Compiler kann keine
ausführbaren Dateien erstellen, na toll.
Wenn man nicht weiss was darunter zu verstehen ist, dann sagt es einem
gar nichts.
Vielleicht steht in diesem config.log tatsächlich etwas hilfreicheres.

Ansonsten kann ich dir aber einen Rat geben, nimmt die Versionen von
binutils , gcc, avr-lib die in der Anleitung benutzt wurden.
Bei der installation der neueren versionen muss man möglicherweise
anders vorgehen.
Sind zwar etwas älter, aber auch gut. Ich kann mich erinnen dass ich
statt avr-libc-1.0.4 , avr-libc-1.2.5 verwendet habe und Installation
ging auch reibungslos.

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> jetzt folgende fehlermeldungen:
...
> See #config.log for more details.

Und...?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> make[1]:***[configure-target-libssp] Error1

Den GCC 4.x musst du für --target=avr mit --disable-libssp
konfigurieren.  libssp wird für den AVR nicht unterstützt,
da wesentliche Voraussetzungen (wie z. B. ein Dateisystem,
damit man fopen() machen kann) nicht gegeben sind.  Selbst
wenn es unterstützt wäre, müsste man zur Auflösung des
Henne-Ei-Problems (libssp braucht eine funktionierende libc,
die bekommst du aber erst, wenn du einen funktionierenden
Compiler hast) initial den Compiler ohne libssp bauen, danach
die libc, dann den Compiler nochmal mit libssp.

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vielen Dank Jungs!
Ich habe den libssp disable und avrgcc ohne Fehlermeldung endlich
installiert...echt Danke Jörg!
Sorry wenn ich langsamm nerve, aber bei der Installation von libc-1.4.4
bekomme ich nachdem ich " sh -x ./doconf " mache die Rückmeldung, dass
der Datei oder das Verzeichnis nicht gefunden wird.
"echo $PATH" gibt mir /usr/local/avr/... sowie "echo $PREFIX" auch.
was mache ich noch falsch? muss ich irgendwas bei dieser Version von
libc-1.4.4 beachten? Ich habe einen Atmega8515 und es wird von dieser
Version unterstüzt. THX :)

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> was mache ich noch falsch?

doconf gibt's in avr-libc >= 1.4 nicht mehr, dieser Hack ist nicht
mehr notwendig.  Du kannst ganz normal ./configure aufrufen
(musst allerdings --host angeben, aber das sagt es dir schon ;-).

Die Doku ist übrigens dahingehend aktualisiert worden...

Autor: Martin #### (martin-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>>Ich habe einen Atmega8515 und es wird von dieser
Version unterstüzt.
Also unter Supported Devices ist es auf jedenfall aufgelistet.

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,
avr-libc habe ich jetzt erfolgreich installiert.

Nächtes Problem:
>> initial den Compiler ohne libssp bauen, danach
die libc, dann den Compiler nochmal mit libssp.
Das habe ich getan... wenn ich aber den Compiler mit libssp
configuriere und danch "make" mache, kriege ich diesen Fehlern:

../../../libssp/ssp.c: In Function '_guard_setup':
../../../libssp/ssp.c:70: warning:implicit decklaration of function
'open'
../../../libssp/ssp.c:70: error:'O_RDONLY' undeclared (first use in
this function)
../../../libssp/ssp.c:73:error:'ssize_t' undeclared (first use in
this function)
../../../libssp/ssp.c:75:warning:implicite declaration of 'close'
../../../libssp/ssp.c:76:error:'size' undeclared (first use in this
function)
../../../libssp/ssp.c: In function 'fail':
../../../libssp/ssp.c:100: error:'O_WRONLY' undeclared (first use in
this function)
../../../libssp/ssp.c:119: error:'ssize_t' undeclared (first use in
this function)
../../../libssp/ssp.c:119: error: expected';'befor 'wrote'
../../../libssp/ssp.c:120: error:'wrote' undeclared (first use in
this function)
../../../libssp/ssp.c: warning: incompatible implicit declaration of
built-in function '_exit'
make[3]:*** [ssp.lo] Error1
make[3]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make[2]:*** [all] Error2
make[2]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make[1]:***[all-target-libssp] Error2
make[1]:Leaving
directory'home/student/Desktop/gcc-4.1.1/obj-avr/gcc'
make:***[all] Error2

:( Was nun?
Danke

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich schrob doch aber: "Selbst wenn es unterstützt wäre, ...".

libssp ist auf dem AVR nicht unterstützt.  Warum, das siehst du
eben selbst.  Was sollen open() und close() auf einem embedded
system, das keinerlei Dateisystem besitzt?

Du bist also mit deiner Toolchain fertig, nun benutze sie einfach!

Autor: Christelle T. (tchris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah ok... endlich! vielen vielen Dank Joerg.
kiss

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.