www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Misteriöser Fehler ????


Autor: Frank Weltz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo....

ich programmiere schon seit einer weile an einen kleinen Projekt in
WINAVR. Vor ein paar tagen bekam ich plötzlich aus heiterem himmel eine
fehlermeldung. Die Allerdings nach ner weile wieder weg ging (ich weiss
nicht warum). Die fehlermeldung kommt jetzt plötzlich wieder...obwohl
ich an der betroffenen datei nichts gemacht hab.
Was soll diese Fehlermmeldung bedeuten ? Wie kann ich die fehlende rule
festlegen ?


Gruß, Frank

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

> Process Exit Code: 2

Autor: Christian Fasthuber (fasti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Klingt für mich als ob im makefile was nicht in Ordnung ist.
Schau mal nach, ob der main File name (Filename ohne .c) und die C/C++
Sourcefilesverknüpfung in Ordnung sind. Hatte das gleiche Problem auch
grad erst :-)

mfg

Fasti

Autor: Frank Weltz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab daran aber nix geändert....das Makefile war nichtmal geöffnet.
Der fehler ist beidermal bei der spi.o aufgetreten...obwohl ich die
nicht offen hatte.

# List C source files here. (C dependencies are automatically
generated.)
SRC = $(TARGET).c flash.c test.c spi.c

Autor: Christian Fasthuber (fasti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und beim main file name ist auch noch der Name der Datei ohne Endung
drin?

Autor: Frank Weltz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, hab ich auch gemacht.

ich geh eigentlich mit allen .c files gleich um.....
wiso tritt der fehler nur bei der spi.c auf ?


# Target file name (without extension).
TARGET = main

Autor: Christian Fasthuber (fasti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mhm, heisst dein File wirklich main?
Ich habe dort den Namen meiner C-Datei reingeschrieben und dann hats
bei mir funktioniert. Was da sonst noch sein könnte bin ich jetzt auch
überfragt.....

Autor: Frank Weltz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, die datei heisst main.
Woran könnte das liegen ?

Autor: Hegy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast an einer Datei was geandert, mit der das File "spi.o" erstellt
wird. Make kriegt das mit, das da eine Aenderung vorgenommen wurde und
will spi.o neu bauen, geht aber nicht, weil im Makefile keine
"anleitung" steht, wie spi.o gebaut werden soll. Also musst du das
Makefile entsprechend erweitern, oder das spi.o per Hand bauen, ist
aber mit Makefile, wenn du's benutzt, natuelrich sinniger.

Kurzum: main.elf enthaelt spi.o, spi.o ist (auch) aus spi.c entsanden.
spi.c geaendert, spi.o neubauen (make-Fehler, wie bauen??), spi.o &
evtl andere *.o Files zum main.elf zusammendaengeln.

Autor: Feadi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Hegy:
Vergiss bitte nicht die default-rules: Wenn eine .c datei vorhanden ist
und eine .o Datei gebraucht wird, wird die .o Datei automatisch aus der
.c Datei erstellt. Auch ohne Regel in der Makefile.

Feadi

Autor: Alexander (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hatte sowas auch manchmal sporadisch. Im Normalfall hat ein make
clean und danach ein make all die Sache immer behoben.

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.