Forum: PC-Programmierung Pkg-config Befehl erklären


von dieter (Gast)


Lesenswert?

Wenn die gtk-Bibliothek in einem Programm Verwendung findet wird mit 
folgendem befehl kompiliert:
$ cc `pkg-config --cflags gtk+-3.0` hello.c -o hello `pkg-config --libs 
gtk+-3.0`
Was bewirkt pkg-config --cflags und pkg-config --libs?
Werden mit letzterem Befehlsteil die Lage der nötigen Libs angegeben?
Pkg-config --flags ist nötig für was?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Ruf die beiden pkg-config-Befehle doch einfach mal auf der Kommandozeile
auf.  Das, was du da siehst, wird durch die Backticks dann in die
Compiler- oder Linker-Kommandozeile hinein substituiert.

von Gerd E. (robberknight)


Lesenswert?

pkg-config ist ein System, mit dem Programmbibliotheken die von ihnen 
benötigen Include-Pfade, .so-Dateien und Abhängigkeiten den Compilern 
und Linkern mitteilen können.

Sowas liegt einer gut gepflegten Programmbibliothek bei.

Der Vorteil ist, daß die Pfade und .so-Dateien sich von Version zu 
Version oder Distribution zu Distribution leicht unterscheiden können 
und die Nutzer der Programmbibliothek dennoch nichts anpassen müssen, da 
diese Informationen vom pkg-config bereitgestellt und nicht fest 
eincodiert werden müssen.

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.