www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik No Rule To Make Target?!


Autor: Dennis (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin zusammen,
AVR-Studio meldet mir mit dieser angehängten Makefile
"make: *** No rule to make target `../Netzteil.c', needed by 
`Netzteil.o'.  Stop."

Ich hab mich mal an den Suchergebnissen hier im Forum entlang gehangelt, 
aber trotzdem kann ich dn Fehler nicht finden.

Könnt Ihr mir helfen?!

Vielleicht noch die Info: Das Problem besteht erst, seit dem ich die 
Makefile mal in AVRStudio abgehängt habe, und dieselbe Datei 
(unverändert) wieder einhängen wollte.

Grüße,

Dennis

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Makefile schaut so aus, als würde es in ein Unterverzeichnis 
gehören.

Leg mal da, wo dein Netzteil.c liegt, ein neues Verzeichnis an (z.b. 
"build"), verschieb das Makefile da rein, und versuchs nochmal.

Oder lass das Makefile "neben" dem "Netzteil.cc", nimm dafür das "../" 
in Zeile 47 raus.

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, nun habe ich das hier:

gcc plug-in: Error: Object file not found on expected location D:\Eigene 
Dateien\Elektronikzeugs\Projekte\Netzteil\C\Netzteil.elf
Make sure your makefile specifies the output .elf file as Netzteil.elf

gcc plug-in: Error: Object file not found on expected location D:\Eigene 
Dateien\Elektronikzeugs\Projekte\Netzteil\C\Netzteil.elf
Make sure your makefile specifies the output .elf file as Netzteil.elf

Zwei Mal die gleiche Meldung?!

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, ich habe das Problem für die letzte Meldung gefunden...irgendwas 
ist mit einer .h-Datei nicht richtig.

#include<avr\stdlib.h>

Compiler meldet:

../Netzteil.c:6:23: error: avr\stdlib.h: No such file or directory
../Netzteil.c: In function 'print_voltage':
../Netzteil.c:210: warning: implicit declaration of function 'itoa'

Aber ich habe das überprüft: Die Datei liegt in dem genannten 
Verzeichnis.

Was ist das denn nun?!

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schreib besser:

#include <avr/stdlib.h>

('/' statt '\')


ausserdem liegt die "stdlib.h" (bei mir) nicht im avr-Unterverzeichnis.

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Schreib besser:

>#include <avr/stdlib.h>

>('/' statt '\')

Ich habe alle #includes so. Wenn ich Deinem Rat folge, dann versteht das 
Ding gar nichts mehr.

<ausserdem liegt die "stdlib.h" (bei mir) nicht im avr-Unterverzeichnis.

Keine Ahnung, warum das bei mir so ist. Aber die ist ganz sicher da.

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dennis schrieb:

> Keine Ahnung, warum das bei mir so ist. Aber die ist ganz sicher da.

Dann ist das Falsch. Der C-Standard schreibt vor, dass das
#include <stdlib.h>
heißen muss.
Versuchs einfach mal, vermutlich ist dein "avr"-Verzeichnis im Suchpfad.

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, das hab ich gemacht. Und das funktioniert auch. Danke!
Das sieht nun aber bei mir so aus:


#include<avr\io.h>
#include<avr\interrupt.h>
#include<avr\portpins.h>
#include<stdlib.h>

stdlib.h liegt im gleichen Verzeichnis wie die anderen .h auch ... Das 
Programm wird nun einwandfrei compiliert. Wurde es bis vor 2 Stunden 
aber auch. Und ich habe an dem Programm nix geändert, ausser, dass ich 
versehentlich die Makefile vom Projekt entfernt habe. Nachdem ich diese 
wieder eingebunden hatte, ging das los. Und an den #includes habe ich 
nichts verändert.

Kann mir das jemand erklären?!

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.