FreeBSD kennt pkg-config nicht für Compileraufruf

R

ralli

Guest
Ich weiß nicht, ob klar ist, was ich meine. Ich beschäftige mich zur Zeit mit den Grundlagen der GTK2 bezw. GTK3 Programmierung. Hier der Quellcode für ein simples Fenster:

Code:
// Programm: simple.c

// compilieren mit: gcc -o simple simple.c `pkg-config --libs --cflags gtk+-2.0`

#include <gtk/gtk.h>

int main(int argc, char *argv[]) {

  GtkWidget *window;

  gtk_init(&argc, &argv);

  window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_widget_show(window);

  g_signal_connect(window, "destroy",
      G_CALLBACK(gtk_main_quit), NULL);

  gtk_main();

  return 0;
}

Compiliert wird das ganze mit:

Code:
gcc -o icon icon.c `pkg-config --libs --cflags gtk+-2.0`

für GTK2 oder für GTK3:

Code:
gcc icon.c -o icon -Wall `pkg-config --libs --cflags gtk+-3.0`

Nun kennt FreeBSD offensichtlich pkg-config nicht, kann das bitte mal jemand ausprobieren, wie unter FreeBSD das C Programm simple.c mit clang compiliert wird, und hier den Compileraufruf posten, ob das erfolgreich war und funktioniert.
 
Code:
% pkg which /usr/local/bin/pkg-config
/usr/local/bin/pkg-config was installed by package pkgconf-1.6.0,1

:)
 
Danke @Yamagi, bei mir hat es nicht funktioniert, sonst würde ich es nicht posten. Ist der Compileraufruf dann gleich (außer das gcc natürlich durch clang ersetzt wird)? Wenn ja, muß wohl der Path angepaßt werden für die Entwicklungsdateien. Ich kann das augenblicklich leider nicht testen. Arbeitet jemand mit dem Gimp Tookit und könnte das bitte mal antesten, ob und wie es funktioniert.
 
Was ist denn der Fehler des Compilers?
Ich schrieb ja, das ich das zur Zeit nicht testen kann, da ich alles unter Scientific Linux ausprobiert habe. Deshalb wäre ich dankbar, wenn mir jemand 5 Minuten seiner Zeit schenken würde, und das für mich unter FreeBSD antesten würde. Ist ja nur das kleine Programm simple.c, einfach mit clang compilieren, ob es geht. Funktioniert es, installiere ich FreeBSD neu.
 
Achso. Also clang läuft ohne Warnung oder Fehler einfach durch:
Code:
clang simple.c -o simple.c -Wall `pkg-config --libs --cflags gtk+-3.0`
 
Bei mir kommt die Fehlermeldung nach dem Compileraufruf:

Code:
pkg-config: not found
simple.c:6:10: fatal error: 'gtk/gtk.h' file not found
#include <gtk/gtk.h>
         ^~~~~~~~~~~
1 error generated.

pkg-config ist nicht installiert. Wenn ich es als Binärpaket installieren möchte, ist es nicht vorhanden.
 
Ich habe das Problem gelöst. Den Port pkg-config gibt es nicht mehr, er wurde entfernt. Als Ersatz gibt es das Paket pkgconf. Nur das war nicht installiert. Ich habe es gerade nachgeholt und nun funktioniert es. Ich danke Euch für die Unterstützung.
 
Zurück
Oben