Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: GTK:n otsikkotiedostot hukassa kääntäjältä

Päärynämies [06.02.2008 20:36:45]

#

No ajattelin vihdoin siirtyä C(++) ohjelmoinnissani käyttämään ohjelmissani myös graafisia käyttöliittymiä. GTK:n valitsin kirjastoksi, jolla ne toteutan, koska se on tuttu jo pythonin pygtk:n opettelun myötä. Ongelmana on vain, että kääntäjä ei löydä otsikkotiedostoa gtk.h. Käytän Xubuntua ja asensin Synapticin kautta paketin libgtk2.0-dev ja sen vaatimat riippuvuudet. Otsikkotiedosto löytyy kiintolevyltä hakemistosta /usr/include/gtk-2.0/gtk/gtk.h. Kääntäjä (gcc) kuitenkin herjaa, että "gtk_test.c:7:21: error: gtk/gtk.h: No such file or directory" ja sen jälkeen sitten virheilmoituksia liuta liittyen siihen, kun tuota ei saatu sisällytettyä, niin tietotyyppejä ei kääntäjä tunnista jne.

Tässä vielä linkkikoodiin, jonka koitin kääntää. Tiedoston nimenä vain tuo gtk_test.c. http://scentric.net/tutorial/ch-treeview.html

Pekka Karjalainen [06.02.2008 21:13:00]

#

Gcc-kääntäjän optiolla -I saa aina lisättyä hakemistoja, joista include-tiedostot haetaan. Siitä enemmän manuaalissa. Hätäkorjauksena kuitenkin komentorivillä -I/usr/include/gtk-2.0 saattaisi auttaa.

En oikein tunne GTK:n saloja, mutta shelliskripti nimeltä gtk-config pitäisi olla oikea ratkaisu ongelmaan. Tällainen ohje löytyi nyt äkkiä.

http://www.uni-koeln.de/rrzk/software/grafik/gui/gtk/gtk-config.txt

Varmasti siitä on GTK:n dokumentaatiossa enemmän. Jos joku muu on itse ratkaissut saman ongelman, hän voinee kertoa lisää.

Markus [07.02.2008 15:01:10]

#

ks. tämä videotutoriaali. Se kattaa myös kääntämisen.
http://mirror.linux.org.au/pub/linux.conf.au/2008/Wed/mel8-227a.ogg

Päärynämies [07.02.2008 22:52:06]

#

Jaahas, tapahtui ihme. Nyt kääntyi ilman mukinoita. Mitään en tehnyt tai muuttanut. Ilmeisesti vähintäänkin Pyhä henki on laskeutunut järjelmääni. Kyllä nyt kelpaa ohjelmoida.

Tosin aiemminkin on ollut ongelmia siinä, että järjestelmäni ei löydä kaikkia tiedostoja, jotka levyllä ovat. Esimerkiksi tuon libgtk2.0-dev paketin asentamisen jälkeen komento 'locate gtk.h' ei tuottanut mitään muistaakseni. Outoa, mutta sekin korjaantui ajan kanssa. Aiemmin kyllä kääntäjä on silti kaiken löytänyt.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta