Kompilieren von C/GTK innerhalb von Eclipse
Ich bin hantieren mit dem C/C++ - version von Eclipse zu bauen, eine einfache GTK-app. Aber ich kann nicht scheinen, um in der Lage sein zu kompilieren, GTK Beispiel von Eclipse. Ich kann stellen Sie eine einfache Hello-World-style test-app, so weiß ich die toolchain selbst arbeitet. Aber der moment, als ich anfangen GTK in den mix, der compiler kommt mit Fehler. Das lustige an der Sache ist, dass ich kompilieren Sie die Beispiele außerhalb der Eclipse-Umgebung einwandfrei. E. g., Ich bin mit den Beispielen auf diese Seite und den Anweisungen Folgen, die es lassen Sie mich bauen, eine Arbeit binäre.
Ich denke, das erste problem ist, dass die Haupt-GTK-include-Datei verwiesen wird anders, wenn ich versuche zu kompilieren in Eclipse. Die nicht-Eclipse-version kann ich kompilieren mit (wie im Beispiel):
#include <gtk/gtk.h>
Jedoch innerhalb von Eclipse funktioniert das nicht. Ich brauche, um es zu ändern:
#include <gtk-2.0/gtk/gtk.h>
Die include-Datei kann dann gefunden werden, aber der Kompilationsprozess beginnt dann zu werfen, Fehler über den Typ 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;
}
Ergebnisse in diesen Fehler:
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
Nicht sicher, wie gehen über diese. Jegliche Hilfe würde sehr geschätzt werden.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Rechten Maustaste auf das Eclipse-Projekt und wählen Sie Eigenschaften. Aus der drop-down-Konfiguration, wählen Sie
[ All configurations ]
. Dann auf die Tool-Registerkarte Einstellungen wählen SieGCC C Compiler
(Standard) und fügen Sie die folgenden am EndeCommand line pattern
(Experten-Einstellungen) Feld:Tun die gleiche Sache für die
GCC C Linker
option.Wenn Sie nicht möchten, starten Sie die include-Pfade mit gtk-2.0 als auch die include-Verzeichnis (/usr/include/gtk-2.0) wie aardvark vorgeschlagen.
pkg-config --cflags --libs gtk+-2.0
gegen Ende.Versuchen Sie, die gtk-Verzeichnis zum build-path:
Gehen Sie in die Projekt-Eigenschaften -> C/C++ build -> Einstellungen -> Tools-Einstellungen -> Verzeichnisse und fügen Sie ihn in Include-Pfade.
Lange gewartet Erleichterung angesichts der pkg-config-Unterstützung für Eclipse CDT wird bald kommen.
Unterstützung ist in der Entwicklung und werden integriert, um CDT etwa im August oder so.
Das wichtigste Merkmal ist, dass eine einfach zu bedienende Benutzeroberfläche erlaubt Ihnen die Auswahl der benötigten Pakete.
Projekt-website:
http://code.google.com/p/pkg-config-support-for-eclipse-cdt/
Update:
Fühlen Sie sich frei, um den test der beta-version:
http://marketplace.eclipse.org/content/pkg-config-support-eclipse-cdt
Feedback dazu ist willkommen!