La compilation C/GTK au sein d'Eclipse

Je suis de bidouiller avec le C/C++ version d'Eclipse pour compiler une simple application GTK. Cependant, je n'arrive pas à être en mesure de compiler GTK échantillon à l'intérieur de l'Éclipse. Je peux compiler un simple Hello World style application de test, donc je sais que l'outil de la chaîne elle-même travaille. Cependant, le moment où j'ai commencer à ajouter de GTK dans le mélange, le compilateur arrive avec des erreurs. Le plus drôle, c'est que je peux compiler les exemples à l'extérieur de l'environnement Eclipse l'amende juste. E. g., Je suis en utilisant les exemples cette page et en suivant les instructions permettez-moi de construire un binaire.

Je pense que le premier problème est que le principal GTK inclure le fichier est référencé différemment lorsque j'essaie de compiler au sein d'Eclipse. Le non-Eclipse version je peux compiler avec (comme dans l'exemple):

#include <gtk/gtk.h>

Cependant, au sein d'Eclipse, cela ne fonctionne pas. J'ai besoin de le modifier:

#include <gtk-2.0/gtk/gtk.h>

Le inclure le fichier peut ensuite être trouvée, mais le processus de compilation puis commence à lancer des erreurs sur le type GtkWidget. E. g.:

#include <gtk-2.0/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);

    gtk_main ();

    return 0;
}

Résultats de ces erreurs:

make all 
Building file: ../src/main.c
Invoking: GCC C Compiler
gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/main.d" -MT"src/main.d" -o"src/main.o" "../src/main.c"
../src/main.c: In function main’:
../src/main.c:7: error: GtkWidget undeclared (first use in this function)
../src/main.c:7: error: (Each undeclared identifier is reported only once
../src/main.c:7: error: for each function it appears in.)
../src/main.c:7: error: window undeclared (first use in this function)
../src/main.c:9: warning: implicit declaration of function gtk_init
../src/main.c:11: warning: implicit declaration of function gtk_window_new
../src/main.c:11: error: GTK_WINDOW_TOPLEVEL undeclared (first use in this function)
../src/main.c:12: warning: implicit declaration of function gtk_widget_show
../src/main.c:14: warning: implicit declaration of function gtk_main
make: *** [src/main.o] Error 1

Pas sûr de savoir comment aller à ce sujet. Toute aide serait très appréciée.

OriginalL'auteur Luke | 2009-08-22