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
Vous devez vous connecter pour publier un commentaire.
Cliquez-droit sur le projet Eclipse et sélectionnez propriétés. À partir de la Configuration de la liste déroulante, sélectionnez
[ All configurations ]
. Puis sur l'Outil de l'onglet Paramètres sélectionnezGCC C Compiler
(par défaut) et ajoutez la ligne suivante à la finCommand line pattern
(Expert paramètres) de la boîte:Faire la même chose pour le
GCC C Linker
option.Si vous ne voulez pas commencer votre chemins à inclure avec gtk-2.0 que aussi ajouter le répertoire include (/usr/include/gtk-2.0) comme aardvark suggéré.
Quelle est la version de Eclipse utilisez-vous et pour quel type de projet avez-vous créer? La question initiale est de '09, donc les choses ont peut être changé ou déplacé un peu partout dans l'INTERFACE utilisateur d'Eclipse.
Pour 2019, le lieu, vous devez ajouter l'option : Dans la fenêtre projet, sélectionnez le Projet > Propriétés > Choisir C/C++ Build > Paramètres > Sous " Paramètres de l'Outil de sélection de votre compilateur GCC C++ ou GCC compilateur C ,sur le côté droit, vous pouvez trouver des "Experts paramètres: ligne de Commande modèle:" , ajoutez la ligne
pkg-config --cflags --libs gtk+-2.0
vers la fin.OriginalL'auteur Luke
Essayez d'ajouter le répertoire gtk pour le build path:
Aller dans les Propriétés du projet -> C/C++ build -> Paramètres -> paramètres de l'Outil -> Répertoires et l'ajouter dans les chemins d'inclusion.
OriginalL'auteur Bruce Alderman
Un tant attendu de secours compte tenu de la pkg-config soutien pour Eclipse CDT est à venir bientôt.
Le support est en cours de développement et sera intégré à la CDT vers le mois d'août.
La caractéristique la plus importante est que un facile pour utiliser l'interface utilisateur permet de sélectionner les paquets nécessaires.
Site web du projet:
http://code.google.com/p/pkg-config-support-for-eclipse-cdt/
Mise à jour:
N'hésitez pas à tester la version bêta:
http://marketplace.eclipse.org/content/pkg-config-support-eclipse-cdt
La rétroaction est très appréciée!
OriginalL'auteur Petri Tuononen