error: gtkmm.h: No such file or directory

Status
Niet open voor verdere reacties.

werocom

Gebruiker
Lid geworden
16 apr 2008
Berichten
72
Ik probeer een heel simpel programma te compileren op ubuntu waarbij ik gebruik maak van de GNU C++ compiler. Het moet een programma zijn dat de GUI gebruikt van GTK, de volgende code heb ik gekopieerd van de website van GTK:

Code:
#include <gtkmm.h>

int main(int argc, char *argv[])
{
    Gtk::Main kit(argc, argv);

    Gtk::Window window;

    Gtk::Main::run(window);
    
    return 0;
}

Ik compileer volgens het volgende commando in de terminal:

Code:
g++ test.cpp

En ik krijg de volgende errors:

Code:
test.cpp:1:19: error: gtkmm.h: No such file or directory
test.cpp: In function ‘int main(int, char**)’:
test.cpp:5: error: ‘Gtk’ has not been declared
test.cpp:5: error: expected `;' before ‘kit’
test.cpp:7: error: ‘Gtk’ has not been declared
test.cpp:7: error: expected `;' before ‘window’
test.cpp:9: error: ‘Gtk’ has not been declared
test.cpp:9: error: ‘window’ was not declared in this scope

Ik heb alle pakketen gedownload en geinstalleerd middels apt-get, maar de compiler kan ze niet vinden.

Iemand enig idee?
 
Laatst bewerkt:
ik denk dat je commando niet volledig is, probeer het eens met iets als dit:

Code:
[B]gcc base.c -o base `pkg-config --cflags --libs gtk+-2.0`[/B]
 
Code:
g++ test.cpp -o test 'pkg-config --cflags --libs gtk+-2.0'
g++: pkg-config --cflags --libs gtk+-2.0: No such file or directory
test.cpp:1:19: error: gtkmm.h: No such file or directory
test.cpp: In function ‘int main(int, char**)’:
test.cpp:5: error: ‘Gtk’ has not been declared
test.cpp:5: error: expected `;' before ‘kit’
test.cpp:7: error: ‘Gtk’ has not been declared
test.cpp:7: error: expected `;' before ‘window’
test.cpp:9: error: ‘Gtk’ has not been declared
test.cpp:9: error: ‘window’ was not declared in this scope

Helaas, of heb ik een spelfout?
 
Bedankt voor de tip.

Code:
g++ test.cpp -o test `pkg-config --cflags --libs gtk+-2.0`
test.cpp:1:19: error: gtkmm.h: No such file or directory
test.cpp: In function ‘int main(int, char**)’:
test.cpp:5: error: ‘Gtk’ has not been declared
test.cpp:5: error: expected `;' before ‘kit’
test.cpp:7: error: ‘Gtk’ has not been declared
test.cpp:7: error: expected `;' before ‘window’
test.cpp:9: error: ‘Gtk’ has not been declared
test.cpp:9: error: ‘window’ was not declared in this scope

1 foutmelding minder :P. Hij zegt dus niet meer dat de directory niet bestaat, alleen kan hij het bestand gtkmm.h erin niet vinden.
 
PHP:
sudo apt-get install libgtkmm-2.4-dev

Je moet van bibliotheken die je wilt gebruiken wel de headers hebben
 
Code:
 sudo apt-get install libgtkmm-2.4-dev
[sudo] password for ...:
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libgtkmm-2.4-dev is already the newest version.
The following packages were automatically installed and are no longer required:
  libgnome-compiz-manager0
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Helaas..
 
probeer het eens met
Code:
#include <gtkmm/main.h>
i.p.v.
Code:
#include <gtkmm.h>
 
PHP:
dpkg -L libgtkmm-2.4-dev
Dat laat zien welke bestanden in dat pakket zitten en dus waar ze gebleven ziin.
Je c compiler zoekt onder /usr/include oa naar headers
 
Bedankt, bleek dat ze idd in de verkeerde directory stonden, in de goede directory gezet en nu werkt het :D.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan