C Fremdmodule in Unterverzeichnisse

Gast #424179
Lesenswert?
• ▲
▼
Hi, kurze Frage, großes Problem.
Ich möchte ein wenig Ordnung in meine Entwicklung bringen und 
Fremdsourcen von meinen eigenen trennen. Normalerweise sind 
Zusatzbibliotheken von FLeur... immer im selben Ordner, wie auch der 
eigene Code. Das ganze Fremdzeug soll nun z.B. nach /externes. Aber 
irgendwie kriege ich das trotz Unterstützung des Chats nicht hin. Klar 
ist soweit, dass die Includes mit den Pfad gefüttert werden müssen also
#include "/externes/lcd.h"
Dann mäckert aber GCC dass er kein Ziel für das kompilieren der im 
Makefile unter SRC erwähnten lcd.c hat. Ich dachte ich müsste da auch 
den Pfad /externes/lcd.c angeben aber das scheitn irgendwie nicht zu 
funktionieren :-(
Gast #424200
Lesenswert?
• ▲
▼
Probier es mal mit einem zusätzlichen Punkt also "./extern/blabla". Ohne 
diesen Punkt geht es doch mit dem ersten Slash im Wurzelverzeichnis los 
und wenn es da dann keinen Ordner extern gibt, dann iss Sense.
#424622
Lesenswert?
• ▲
▼
Was auch noch helfen kann ist, root des Quellcodes als zusätzliches 
Includeverzeichnis zu definieren. Sonst kann - muss aber nicht - es 
Probleme damit geben, dass er die entsprechende header Datei im 
Unterverzeichnis nicht verwendet.

Wenn du das Standardmakefikle von MFile verwendest, dann musst du 
eventuell auch noch einen zusätzlichen Build-Step in make all: einbauen, 
der dir die entsprechende Verzeichnisstruktur in .obj generiert. Siehe 
meinen Thread von gestern oder vorgestern.

cu, mz
Gast #424748
Lesenswert?
• ▲
▼
Ich habe hier mal das Makefile und den Source rangehängt. Ist aber fast 
das Standartmakefile.
Ich habe wirklich schon alle Kombinationen durchprobiert, er scheint den 
Eintrag für die jeweilige .c Datei die man im makefile auflistet nicht 
zu finden :-(
Angehängte Dateien:
(Firma: DB1FW) Persönliche Seite #425026
Lesenswert?
• ▲
▼
JoJo wrote:
> Ich habe wirklich schon alle Kombinationen durchprobiert, er scheint den
> Eintrag für die jeweilige .c Datei die man im makefile auflistet nicht
> zu finden :-(

Ich habe es mal ausprobiert.
Bei mir geht es, wenn Du bei den "test/lcd.c" usw. die Anführungszeichen 
weglässt.

"test/lcd.c"   ->   test/lcd.c

Gruss
FrankW
Gast #425451
Lesenswert?
• ▲
▼
argh daran hätte ich nun wirklich nicht gedacht, gerade weil unten bei 
der Variable für weitere Verzeichnisse explezit drin steht, dass diese 
in Anführungszeichen übergeben werden müssen und die Shell die ja auch 
so verwendet. Naja wieder mal was gelernt, nix ist wie es scheint ;-)

Besten dank nochmal Leute!

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.