Forum: Mikrocontroller und Digitale Elektronik Header aus anderem Ordner einbinden


von µCnoob (Gast)


Lesenswert?

Device: Fujitsu MB90F342
---------------------------


Hi, folgende Ordnerstruktur:

--------Hauptordner----------
-       |         |
-       |         |
Unterordner1      Unterordner2(Header)

So jetzt würde ich gerne im Unterordner1 einen Header aus dem 
Unterordner2
einbinden,...
Habs so versucht:
1
//c-file liegt im Unterordner1
2
#include "../Unterordner2/sysinit.h"

das mag der Compiler allerdings nicht....

Gibt es die Möglichkeit überhaupt, ohne dass ich ganze Pfade angeben 
muss??
Wenn ja, wie lautet da die Syntax??
Gruß
µCnoob

von Bruno (Gast)


Lesenswert?

Du gibst doch in den Optionen vom Compiler an welcher Ordner durchsucht 
werden soll. Somit benötigst du doch nur den Namen der Datei.

von µCnoob (Gast)


Lesenswert?

Ok danke,
aber nur interesse halber, geht es auch im Code??

Gruß

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Habs so versucht:
>
> //c-file liegt im Unterordner1
> #include "../Unterordner2/sysinit.h"
>
> das mag der Compiler allerdings nicht....

Das sollte aber funktionieren, denn diese Vorgehensweise ist legitim.
Sowas mache ich in vielen Projekten genau so.

Allerdings ist hier die Frage, was zu diesme Zeitpunkt das "aktuelle" 
Verzeichnis ist und ob der Compiler die nicht-Windows-Syntax der 
Pfadtrenner unterstützt.

Solltest Du Windows einsetzen, kannst Du mit Systeminternals' Filemon 
nachsehen, wo der Compiler versucht, Deine Headerdatei anzufassen, damit 
kannst Du das "aktuelle" Verzeichnis lokalisieren.

von µCnoob (Gast)


Lesenswert?

öhm, das hab ich jetzt nicht verstanden,...
>Solltest Du Windows einsetzen, kannst Du mit Systeminternals' Filemon
>nachsehen, wo der Compiler versucht, Deine Headerdatei anzufassen, damit
>kannst Du das "aktuelle" Verzeichnis lokalisieren.

Bin jetzt kein Windowsexperte, muss es aber bei der Arbeit verwenden :-(

Gruß

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Filemon überwacht Dateizugriffe von Programmen. Meckert Dein C-Compiler, 
daß er eine Datei nicht gefunden habe, kannst Du mit Filemon nachsehen, 
welchen (vollständigen) Pfad Dein Compiler ausprobiert hat.

Was aber exakt bedeutet Dein "das mag der Compiler allerdings nicht"? 
Die Fehlermeldung wird ja wohl nicht "I don't like this" lauten, oder?

von µCnoob (Gast)


Lesenswert?

Doch!
Ok, scherz ;-}

Nee, die Lautete
>E4038P: #include: cannot find file "../include/sysinit.h"


Aber, it was my mistake,...
Ich hatte einfach vergessen die Datei in den Ordner zu übernehmen, 
peinlich, peinlich,... ach ja und das include muss dann so heißen:
"..\include\sysinit.h"

Also, danke,...
lg
noob

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.