www.mikrocontroller.net

Forum: Compiler & IDEs Fompilerfehlermeldung bei 1 Wire Routine


Autor: Thorsten Lauf (tlauf79)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo !

ich wollte gerne die 1Wire Routinen aus diesem Thread einbauen.

http://www.mikrocontroller.net/forum/read-4-84831....

Wenn ich die Main.c mit Make all compilieren möchte, bekomme ich
folgende ( mir nicht verständliche Fehlermeldung ) !

> "make.exe" all

-------- begin --------
avr-gcc (GCC) 3.4.3
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.

make.exe: *** No rule to make target `main.o', needed by `main.elf'.
Stop.

> Process Exit Code: 2

Die make Datei habe ich angehängt.

Soll auf einem Mega 8, mit 16 Mhz laufen.

Danke im vorraus !!
Gruß Thorsten

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Dateiname von "Main.c" sollte "main.c" lauten.

Die Win32-Portierung von avr-gcc hat bei der Behandlung von Dateinamen
den Fehler, daß Groß- und Kleinschreibung unterschieden wird. So sind
MAIN.C, main.c etc. vermeintlich unterschiedliche Dateien.

Das ist unter *nixoiden Betriebssystemen auch der Fall, aber unter
Win32 ist das nicht der Fall und dafür portierte Software sollte sich
auch an diese Gegebenheiten halten.

Das ist aber wohl eine philosophische Betrachtung und müßige
Diskussion.

Zum "Umbenennen" der Datei musst Du sie zunächst komplett anders
benennen, da Win32 eine Veränderung der Groß- und Kleinschreibung nicht
als Umbenennung ansieht.
Also:

  ren Main.c main_.c
  ren main_.c main.c

Ein weiteres Ärgernis ist die Interpretation der Dateinamenserweiterung
.C (groß geschrieben) als C++-Erweiterung, auch dieses Verhalten ist
unter Win32 ein Fehler.

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

Bewertung
0 lesenswert
nicht lesenswert
Main.c != main.c

Autor: Thorsten Lauf (tlauf79)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jo das wars Danke

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

Bewertung
0 lesenswert
nicht lesenswert
> Ein weiteres Ärgernis ist die Interpretation der
> Dateinamenserweiterung .C (groß geschrieben) als C++-Erweiterung,
> auch dieses Verhalten ist unter Win32 ein Fehler.

Das ist nur eine Compiler-Konvention.  Du musst die Datei ja nicht als
.C auf der Kommandozeile angeben.  Außerdem kannst du es immer mit
-x überschreiben.

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.