Forum: Compiler & IDEs GCC/CodeBlocks - "Bibliothek" verwenden


von Bastler (Gast)


Lesenswert?

Hallo Allerseits,

der Begriff Bibliothek ist vielleicht etwas unscharf, es geht um keine 
Binärbibliothek, sondern um eine, die als Source-Code vorliegt. Hier 
bspw. der LWIP-TCP-Stack.

Wie bindet man eine solche Bibliothek grundsätzlich in CodeBlocks ein? 
Bisher habe ich (bei kleineren Bibliotheken) alle benötigten Dateien dem 
Projekt zugefügt und die Ordner dem Suchpfad hinzugefügt. Jetzt bei LWIP 
wird das mühsam und der Compiler (oder die IDE) sollte ja je nach 
eingestellten Defines besser als ich wissen, welche Dateien benötigt 
werden und diese eben übersetzen.

Wie ist die grundsätzliche Vorgehensweise? Oder muss ich die Bibliothek 
erst getrennt kompilieren und dann als echte Binärbibliothek einbinden, 
wenn ich nicht jede einzelne Datei dem Projekt zufügen möchte?

(Bin noch neu in dem Bereich:)

Danke schonmal!

von Oliver S. (oliverso)


Lesenswert?

Der Compiler ist faul und bequem, der sucht und findet von sich aus 
keine source-Dateien. Dafür gibts Systeme wie Codeblocks, um das zu 
verwalten.

Kleine Projekte können schonmal aus ein paar hundert Dateien bestehen. 
Die musst du halt einmal dem Projekt hinzufügen. So aufwendig ist das 
doch jetzt auch nicht.

Oliver

von Bastler (Gast)


Lesenswert?

OK, schade. Zumindest weiß ich jetzt, dass ich mirs nicht unnötig schwer 
mache.

Danke!

von Vincent H. (vinci)


Lesenswert?

Bibliotheken sind in sich abgeschlossene Projekte und sollten auch so 
behandelt werden. Die schnelle und einfache Variante eine Bibliothek 
innerhalb von CodeBlocks einzubinden wird sein den Pfad von Header und 
Archiv irgendwo einzutragen. Wo genau sich diese Option befindet kann 
ich leider nicht sagen, da ich CodeBlocks selbst nicht benutze.

Prinzipiell würde ich jedoch dazu raten ein Build (bzw. MetaBuild) 
System abseits der IDE zu nutzen. IDEs kommen und gehen und brechen auch 
gern mal die Rückwärtskompatibilität zu Projektdatein. Besser wäre wohl 
den gesamten Build auf CMake (oder zumindest Make) umzustellen. Damit 
lassen sich Abhängigkeiten zu Bibliotheken wesentlich besser abbilden.

/edit
Auch wenn es bei der Embedded Programmierung leider immer noch gang und 
gäbe ist, aber Source Datein kopieren ist ein absolutes NO-GO.

: Bearbeitet durch User
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.