Pro-Linux

Pro-Linux Diskussions- und Hilfeforum
Aktuelle Zeit: 15. Nov 2018 3:19

Alle Zeiten sind UTC+01:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 24. Sep 2007 11:38 
Hallo,

möchte mit der Gtk-Programmierung starten unter Debian/Gnome.

Beim Kompilieren werden aber die headerdateien nicht gefunden, obwohl sie alle in zig Unerverzeichnissen installiert sind.


Selbst Anweisungen wie
Code:
gcc main.cc -o prog1 `pkg-config --cflags --libs gtk+-2.0`
oder
Code:
 gcc main.cc -o prog1 `gnome-config --cflags --libs gnomeui`
bringen nichts.

Wieso wird einem die Entwicklungsarberit so schwer gemacht?
Es kann doch nicht sein, dass ich die Libs installiere und nirgendwo sind dann die Befehle für's Kompilieren zu finden?
Selbst meine Versuche, alle Dateien in /usr/include aus den Unterverzeichnissen heraus zu kopieren, scheiterte, da es einfach zu viel ist. Warum macht man das m.E. so wahnsinnig kompliziert?


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 24. Sep 2007 16:03 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Libraries und Headerdateien sind zwei verschiedene Paar Schuhe! Der Grund, warum es für dich so schwer ist, ist, dass du die Ordnung im vermeintlichen Chaos nicht erkennst und versuchst, deine eigene Ordnung zu schaffen (was schwer ist).

Zunächst solltest du mal Fehlermeldungen posten, anstatt einfach "bringt nichts". So kann man dir nicht helfen.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 25. Sep 2007 10:49 
Danke für die Antwort erstmal.
Ist mir schon klar, dass alles seine Ordnung haben soll, nur so viele Unterverzeichisse sind mir zu viel Ordnung.

Unter
http://www.linuxforen.de/forums/showthread.php?t=191735
habe ich genau mein Problem nochmal im Nachhinein gefunden.

Nur geht's immer noch nicht.

Wenn ich z.B. folgendes Musterprogramm nehme:
Code:
#include <gtk/gtk.h>

int main&#40;int argc, char** argv&#41; &#123;
    GtkWidget *app;
    gnome_init&#40;"example", "0.1", argc, argv&#41;;
    app = gnome_app_new&#40;"example", "title"&#41;;
    gtk_widget_show&#40;app&#41;;
    gtk_main&#40;&#41;;    
    return 0;
&#125;
dann kommt beim Kompilieren
mittels
Zitat:
gcc main.cc -o base `pkg-config --cflags --libs gtk+-2.0`
nun die Fehlermeldung
Zitat:
main.cc: In function »int main(int, char**)«:
main.cc:5: Fehler: »gnome_init« wurde in diesem Gültigkeitsbereich nicht definiert
main.cc:6: Fehler: »gnome_app_new« wurde in diesem Gültigkeitsbereich nicht definiert
Und dabei meine ich mich an dieses Tutorial gehalten zu haben: http://www.gtk.org/tutorial/c39.html


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 25. Sep 2007 14:49 
Offline
Benutzeravatar

Registriert: 11. Feb 2006 19:10
Beiträge: 3569
Als Grundproblem sehe ich schon mal, dass deine Datei .cc heißt, also ein C++-Programm darstellt. Du bindest aber Header der Form <xxx.h> ein, also C-Header. In diesen fehlt das "extern C { ... }", so dass es da Schwierigkeiten geben sollte.

Probier mal, ob das Problem nach dem Umbenennen von main.cc in main.c weiterhin besteht.

Weiterhin hast du gnome_xxx-Funktionen aufgerufen, obwohl du oben nur gtk einbindest. Für Gnome fehlen dir weitere Headerdateien. Guck dir bitte zusätzlich auch dieses
http://developer.gnome.org/doc/tutorial ... mming.html
Tutorial an.

Janka

_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.


Nach oben
   
 Betreff des Beitrags:
BeitragVerfasst: 26. Sep 2007 14:05 
Jetzt geht's!

Auf http://www.linuxheadquarters.com/howto/ ... ndow.shtml
habe ich ein funktionierendes Beispiel gefunden.

Mittels
Code:
gcc main.c -o base `pkg-config --cflags --libs gtk+-2.0`
kompiliert; und nun funktioniert es anstandslos.
Durchblick habe ich nun immer noch nicht, kann aber daran arbeiten. :-)


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC+01:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de