Forum: Compiler & IDEs GCC: Linux OK, Windows Fehler?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Andy (Gast)


Lesenswert?

Ich habe hier ein Programm für den ATmega16, welches mit dem AVR-GCC
unter Linux einwandfrei kompiliert, aber unter Windows nicht.
Die Compilerversionen sind beide gleich, unter Linux ist nur die
neueste (1.0.2-) avrlibc-Version installiert. Makefiles wurden jeweils
mit den gleichen Einstellungen mit mfile erstellt.
Folgende Fehler kommen unter Windows:


*******************************************************************
Compiling: lcdtest.c
avr-gcc -c -mmcu=atmega16 -I. -g   -Os -funsigned-char
-funsigned-bitfields -fpack-struct -fshort-enums -Wall
-Wstrict-prototypes -Wa,-adhlns=lcdtest.lst  -std=gnu99
-Wp,-M,-MP,-MT,lcdtest.o,-MF,.dep/lcdtest.o.d lcdtest.c -o lcdtest.o
lcdtest.c: In function `main':
lcdtest.c:58: error: `prog_uint8_t' undeclared (first use in this
function)
lcdtest.c:58: error: (Each undeclared identifier is reported only once
lcdtest.c:58: error: for each function it appears in.)
lcdtest.c:58: error: parse error before "lcdcustomchar"
lcdtest.c:69: error: `k' undeclared (first use in this function)
lcdtest.c:69: error: `lcdcustomchar' undeclared (first use in this
function)
lcdtest.c:102: error: `PORTD4' undeclared (first use in this
function)
lcdtest.c:102: error: `PORTD5' undeclared (first use in this
function)
lcdtest.c:104: error: `PORTC2' undeclared (first use in this
function)
make: *** [lcdtest.o] Error 1
*******************************************************************



Leider muss ich ab und zu unter Windows arbeiten. Wie kann ich das zum
Laufen bekommen?
Danke im voraus :)

von mthomas (Gast)


Lesenswert?

Welche Version der avr-libc ist auf dem Windows-Rechner installiert?
Zumindest die bei WINAVR Sept. 2004 mitgelieferte avr-libc sollte es
schon sein, wenn Kompatibilitaet mit V 1.0.2 des Linux-Rechners
angestrebt wird. Die Unterschriede zw. 1.0 und 1.0.2 sind wohl nicht so
gross (aber das weiss jw besser).

von Jörg Wunsch (Gast)


Lesenswert?

Laut CVS-Log sind prog_uint8_t & Co. seit der 1.0.0 mit dabei
(CVS-Version 1.16.2.1 von pgmspace.h).  Die Vermutung liegt also nahe,
daß Andy auf seinem Windows eine viel zu alte avr-libc zu benutzen
versucht.

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]
  • [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.