Wie benutze ich pkg-config in Make?

9

Ich möchte das einfachste GTK-Programm kompilieren. Ich kann es über die Befehlszeile kompilieren:

%Vor%

Wenn ich jedoch mache, dass es nicht funktioniert:

%Vor%

Es sagt mir Folgendes:

%Vor%

Wo bleibe ich $ (pkg-config --cflags --libs gtk + -3.0) im Makefile, um es kompilieren zu lassen?

Vielen Dank im Voraus für Ihre freundliche Hilfe.

    
Jenia Ivanov 16.02.2015, 00:52
quelle

2 Antworten

14

Es gibt zwei Probleme.

Zuerst ist deine CFLAGS -Zeile falsch: du hast vergessen, gtk+-3.0 im pkg-config -Teil zu sagen, so dass pkg-config stattdessen einen Fehler ausspuckt:

%Vor%

Zweitens, und wichtiger, wird $(...) von make selbst zur Variablensubstitution abgefangen. Tatsächlich hast du das schon gesehen:

%Vor%

wird alles von make gemacht.

Es gibt zwei Dinge, die Sie tun können.

Zuerst können Sie stattdessen '...' verwenden, was das Gleiche bewirkt ( $(...) ist die neuere Shell-Syntax).

%Vor%

Zweitens, da Sie anscheinend GNU make verwenden, können Sie den Befehl shell substitution verwenden, der in der oben verlinkten Antwort Basile Starynkevitch gezeigt wurde:

%Vor%     
andlabs 16.02.2015 01:59
quelle
-2

um den angegebenen Fehler zu beheben:

"main.c: 1: 21: fataler Fehler: gtk / gtk.h: Keine solche Datei oder kein Verzeichnis"

Die Fehlermeldung besagt, dass die Datei gtk / gtk.h nicht gefunden werden kann

korrigieren Sie, indem Sie der gcc-Kompilierungsanweisung den richtigen Pfad hinzufügen:

%Vor%

korrigieren Sie, indem Sie der GCC-Link-Anweisung den Pfad und den Bibliotheksnamen hinzufügen:

%Vor%

Es würde sich auch sehr lohnen, in die pkg-config-Datei zu schauen, um genau zu sehen, was sie enthält / ausführt

%Vor%     
user3629249 16.02.2015 01:11
quelle

Tags und Links