Forum: Compiler & IDEs Include Problem AVR Studio mit c und h datei


von Cavefish (Gast)


Lesenswert?

Hallo, ich möchte gerne eine Sammlung mit Funktionen laden, die nicht im 
Programmpfad liegt.

Die c und h datei der einzubindenen Datei liegt dabei z.b. in c:\avrlib
Der Pfad ist als Includedirectory bei AVR Studio eingetragen.

---Programmdatei -----
#include <test.h>
int main(){
  return(0);
}
-----test.h datei------
#ifndef TEST_H
#define TEST_H

int irgendwas();

#endif
-----test.c datei--------
#include <test.h>
int irgendwas(){
    return(1);
}

Bekomme beim übersetzen jedoch immer die Fehlermeldung
make: *** No rule to make target `..//C/tool/avrlib/test.c', needed by 
`test.o'.  Stop.

Woran kann das liegen ?

von Karl H. (kbuchegg)


Lesenswert?

Cavefish wrote:

> zubindenen Datei liegt dabei z.b. in c:\avrlib
                                       *********

> Bekomme beim übersetzen jedoch immer die Fehlermeldung
> make: *** No rule to make target `..//C/tool/avrlib/test.c', needed by
                                    *************************

Das ist aber ein anderer Pfad.
Was denn nun?

Du musst deinen Pfadwirrwarr auseinanderklamüsern.

von Cavefish (Gast)


Lesenswert?

Sorry mein Fehler
> zubindenen Datei liegt dabei z.b. in c:\tool\avrlib
                                       *********

> Bekomme beim übersetzen jedoch immer die Fehlermeldung
> make: *** No rule to make target `..//C/tool/avrlib/test.c', needed by
                                    *************************


War nur ein Tippfehler, das Problem besteht weiterhin. Irgendwelche 
Vorschläge ?

von OliverSo (Gast)


Lesenswert?

Hst du test.c auch in den source-folder link oben eingetragen?

Oliver

von Space (Gast)


Lesenswert?

Komischer Fehler, aber halbwegs gelöst...scheinbar dürfen die zu 
inkludierenden Dateien nicht auf ein anderes Laufwerk kopiert werden. 
Projektfiles und zu inkludierende DAteien müßen auf dem gleichen 
Laufwerk liegen, sonst kommt der FEhler. Vielleicht ist ja hier AVR 
Studio buggy ?

Die Makefiles unterscheiden sich dann wie folgt
test.o: ../../../../../../libs/test.c  ist ok, ordner liegt auf gleichem
Laufwerk wie Projektdaten in diesem Fall beides auf Laufwerk e:

und beim beispiel wo es nicht funktioniert steht dann in der Makefile
test.o: ..//C/libs/test.c    Die zu inkludierenden Dateien liegen jetzt
auf C:\libs und die Projektfiles auf e: und schon gehts nicht mehr


Also, wer das Problem auch hat alles auf einem LAufwerk lassen. Danke 
für die Hilfe...

von Space (Gast)


Lesenswert?

Scheint ein Bug im AVR studio zu sein. ersetzt man die Zeile
test.o: ..//C/libs/test.c
durch
test.o: C:/libs/test.c

wird es fehlerfrei übersetzt.

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.