C Fremdmodule in Unterverzeichnisse

Gast #424179
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
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.
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
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
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
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

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.