Forum: Compiler & IDEs unbekannte Fehlermeldung


von Benjamin K. (benjaminklimmek)


Lesenswert?

Kennt irgendjemand diese Meldung??

make: *** No rule to make target 
`..//C/Programme/Compiler/WinAVR-20081205/avr/include/GLCD_6100/glcd-Dis 
play3000-151.c',  needed by `glcd-Display3000-151.o'.  Stop.

Ich weiß nicht was ich damit anfangen soll...

Gruß
Benjamin

von ... (Gast)


Lesenswert?

Ein paar mehr Infos wären schon toll...

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Der Pfad

> `..//C/Programme/Compiler/WinAVR-20081205/avr/include/GLCD_6100/glcd-Dis 
play3000-151.c',

sieht prüfenswert aus. Scheinbar wird in deinem Projekt (Makefile?) auf 
eine Datei verwiesen, die so nicht zu finden ist. Kann es sein, dass du 
ein

#include <GLCD_6100/glcd-Display3000-151.c>

verwendet hast, d.g. GCC den Standardincludepfad (der mir komisch 
vorkommt) vorangestellt hat

aber ein

#include "GLCD_6100/glcd-Display3000-151.c"

brauchst?

Also dass der Ordner GLCD_6100 und darin enthaltener Dateien Unterordner 
in dem Verzeichnis ist, in dem sich das Makefile und die restlichen 
Quelldateien befinden?

von Benjamin K. (benjaminklimmek)


Lesenswert?

Stefan B. wrote:
> Der Pfad
>
>>
> `..//C/Programme/Compiler/WinAVR-20081205/avr/include/GLCD_6100/glcd-Dis 
play3000-151.c',
>
> sieht prüfenswert aus. Scheinbar wird in deinem Projekt (Makefile?) auf
> eine Datei verwiesen, die so nicht zu finden ist. Kann es sein, dass du
> ein
>
> #include <GLCD_6100/glcd-Display3000-151.c>
>
> verwendet hast, d.g. GCC den Standardincludepfad (der mir komisch
> vorkommt) vorangestellt hat
>
> aber ein
>
> #include "GLCD_6100/glcd-Display3000-151.c"
>
> brauchst?
>
> Also dass der Ordner GLCD_6100 und darin enthaltener Dateien Unterordner
> in dem Verzeichnis ist, in dem sich das Makefile und die restlichen
> Quelldateien befinden?

Hallo Stefan,

hier mal meine include- datein:
// ------------------------------ INCLUDE 
---------------------------------
#include <stdio.h>
#include <avr/io.h>
#include <avr/wdt.h>
#include <util/delay.h>
#include <math.h>
#include <avr/pgmspace.h>

#include <GLCD_6100/glcd-Display3000-151.h>
extern const prog_uint8_t Font1[], Font2[];

ich kann mir nicht erklären wieso der Linker versucht die C- Datei 
einzubinden...

Gruß
Benjamin

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

Benjamin Klimmek wrote:
> #include <GLCD_6100/glcd-Display3000-151.h>
> extern const prog_uint8_t Font1[], Font2[];

Das ist keine Systemdatei: ergo #include mit "". ggf im Projekt mit -I 
Pfade setzen.

> ich kann mir nicht erklären wieso der Linker versucht die C- Datei
> einzubinden...

Wahrscheinlich ist ein Makefile-Target abhängig von 
glcd-Display3000-151.o
make hat einige implizite Regeln, es versucht also die .o aus einer .c 
herzustellen, die es aber offenbar nicht findet, bzw. zum Herstellen der 
.c gibt es keine Regel.

Johann

von Oliver (Gast)


Lesenswert?

>ich kann mir nicht erklären wieso der Linker versucht die C- Datei
>einzubinden...

Der linker versucht gar nichts.

In deinem makefile steht irgendwo drin, daß zu deinem Programm eine 
Datei glcd-Display3000-151.o gehört, und make möchte die gerne aus 
glcd-Display3000-151.c erzeugen, findet das aber nicht.

Warum, wissen nur der makefile-Autor oder die Götter.

Oliver

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Benjamin, du merkst, zur Lösung des Problems bräuchte man 1. Infos wie 
die Verzeichnisstruktur deines Projekts ist. Wo ist der Ordner GLCD_6100 
und welche Dateien sind drin, sowie 2. was steht im Makefile?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.