www.mikrocontroller.net

Forum: Compiler & IDEs gcc gibt Fehlermeldung, auf anderem PC nicht


Autor: Otto Richter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo da draußen,

ich entwickle ein Programm und arbeite dazu an zwei entfernt stehenden

PC unter WIN2000, WINAVR2060125 und Studio4.12.

Der eine Rechner compilert das folgende Programm ohne Fehlermeldungen
und das Programm tut, was es soll:

// div. includes

int main ( void )
{
/********************************************************/
/* USART0/1 initialisieren und auf die global     */
/* definierte BaudRate einstellen unter Berück-    */
/* sichtigung der global definierten SystemTaktRate   */
usart_init() ;

/********************************************************/
/* und Initialisierung von printf_P,       */
/* der USART muss bereits initialisiert sein    */
fdevopen(Send_char_via_USART, NULL, 0);

/* string aus dem FLASH */
printf_P ( PSTR("-----------------------------------------\r\n"))
;
printf_P ( PSTR( "* START *  " __DATE__"   " _TIME_ "\r\n"))
;

/* HAUPTSCHLEIFE: Run forever */
for (;;)
  {
  }    /* Ende for (;;)  */
return 0 ; /* um Compiler-Warning zu unterdrücken */
}  /* end of main  */

Der andere PC gibt beim Comilieren dieses Programms folgende
Fehlermeldung aus:

../main.c: In function `main':
../main.c:84: Warnung: Verarbeiten des Argumentes 1 von »fdevopen« von
inkompatiblem Zeigertyp
../main.c:84: Fehler: zu viele Argumente für Funktion »fdevopen«

Ich habe das Vorhandensein der libs auf beiden Rechnern überprüft und
kein Problem gefunden und der Quellcode ist natürlich identisch.

Hat da jemand eine Idee ?

Otto

Autor: Idee (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die libs haben wahrscheinlich unterschiedliche
Versionen. Ich glaube in der aktuellen hat
fdevopen nur noch 2 Argumente.

Autor: >-=====+> (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...gleiche/identische GCC Version?

Autor: Otto Richter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi an alle,

...zwar gleiche WINAVR-/gcc-Version, aber ich glaube, ich habe auf dem
PC, der die Fehlermeldung erzeugt, beim Installieren des "neuen"
WINAVR die alte Version vorher nicht deinstalliert.
Kann es erst am Montag probieren.

Danke an alle !

Schönes Rest-WE

Otto

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

Bewertung
0 lesenswert
nicht lesenswert
Lies die bitte einfach die Doku zu stdio nochmal mit durch.

Autor: Otto Richter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jörg,

ich habe stdio.h an den entsprechenden Stellen durchgelesen, aber ich
werde nicht schlau daraus. Ein Beispiel würde alles viel klarer
machen.

Otto

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dann lies nochmals avrlibc Dokumentation Seite 72/73
und schau dir die Deklaration von fdevopen an und deinen Benutzung der
Funktion.

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

Bewertung
0 lesenswert
nicht lesenswert
Beispiele sind ja auch mit drin...

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.