Pozdrav,
krenuo sam instalirati GTK 2.4 , medjutim kad upisem ./configure ispise mi “No package ‘glib-2.0’ found” pa instaliram glib 2.4 i instaliram pkg-config ali kad god upisem ./configure u GTK direktoriju javlja mi No package glib-2.0.Je li problem mozda u tome sto nisam dodao putanju u pkg-config , stalno mi to javlja da trebam uradit i uradio sam to na ovaj nacin pkg-config --libs glib-2.0.pc ali nisam siguran je li to dovoljno.Moze li me neko uputiti samo kako se instalira taj GTK i kako se koristi pkg-config
./configure mora da “pogodi” gdje je na tvom sistemu instaliran glib. Razne distribucije ga instaliraju na razna mjesta. Zato prvo pogledaj gdje je glib:
$ whereis glib
/usr/lib/glib
Na isti način pogledaj gdje je pkg-config.
Zatim pročitaj configure --help u kojem stoji sve potrebno za instalaciju gtk.Najvjerovatnije moraš postaviti PREFIX za glib ili sl.
ok, trebaju ti (redoslijedom)
glib - low level C library
pkgconfig - rukovanje sa development paketima
atk - accesibility toolkit
pango - text layout and rendering
gtk - GUI toolkit (Gimp ToolKit)
pkgconfig instaliraš na PREFIX (sa ./configure --prefix=/usr) i imaš:
/usr/lib/pkgconfig
kad glib instaliras na isti prefix dobices (između ostalog)
’/usr/lib/pkgconfig/glib-2.0.pc’
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
glib_genmarshal=glib-genmarshal
gobject_query=gobject-query
glib_mkenums=glib-mkenums
Name: GLib
Description: C Utility Library
Version: 2.4.7
Libs: -L${libdir} -lglib-2.0
Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/includ
tj. u ovoj datoteci se nalaze sve potrebne informacije da bi ti mogao iskompajlirati aplikaciju koja koristi glib biblioteku. Sličnog sadržaja su i ostale *.pc datoteke.
Na isti način instaliraš atk, pango i gtk.
Ovo gore se odnosi na situaciju da ti sve gtk aplikacije idu na isti prefix kao i pkg-config. Ukoliko to nije slučaj moraš naštimati PKG_CONFIG_PATH varijablu (‘man pkg-config’)
npr. ako instaliras gtk na ‘/usr/local’, a pkg config je na ‘/usr’ prefixu, moras nekako reci pkg-config programu gdje se nalazi datoteka ‘gtk±2.0.pc’, tj. u kojem direktoriju da je trazi (‘export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig’)
P.S.
pkg-config koristis:
gcc pkg-config --cflags --libs pkg_name
myfile.c
` su tzv. backquotes
–cflags prosljedjuje kompajleru -I opcije
–libs (vidi liniju “Libs” u *.pc datoteci)
za pkg_name vidi imena datoteka u ‘/usr/lib/pkgconfig’, ili ‘pkg-config --list-all’
Možda bi jedno ldconfig pomoglo?
Uspio sam instalirati glib i pango , sad sam dosao do gtk i govori da ATK nije instaliran.Glib,pango i atk sam instalirao pod prefixom /usr i kad u gtk dodam taj prefix ne vidi atk.Stavio sam PKG_CONFIG_PATH=/usr/lib/pkgconfig i tu se nalazi atk.pc
Vjerovatno su ti ostale stare verzije *.pc datoteka i gtk biblioteka. Može li kakav log?
btw, redoslijed je jako bitan, onako kako sam naveo u prvom postu.
Aha , evo krenuo sam ponovo to instalirat redoslijedom i zaglavio sam na pango, trazi fontconfig.Kad ukucam make u fontconfig direktoriju dobijem ovo:
In file included from ../fontconfig/fcfreetype.h:27,
from ../src/fcint.h:39,
from fc-lang.c:25:
/usr/local/include/freetype2/freetype/freetype.h:20:2: #error "`ft2build.h' hasn't been included yet!"
/usr/local/include/freetype2/freetype/freetype.h:21:2: #error "Please always use macros to include FreeType header files."
/usr/local/include/freetype2/freetype/freetype.h:22:2: #error "Example:"
/usr/local/include/freetype2/freetype/freetype.h:23:2: #error " #include <ft2build.h>"
/usr/local/include/freetype2/freetype/freetype.h:24:2: #error " #include FT_FREETYPE_H"
make[2]: *** [fc-lang.o] Error 1
make[2]: Leaving directory `/home/skywalker/Util/gtk/fontconfig-2.2.90/fc-lang'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/skywalker/Util/gtk/fontconfig-2.2.90'
make: *** [all-recursive-am] Error 2
[root@localhost fontconfig-2.2.90]#
a skinuo sam i paket fcpackage i tu ima fontconfig.Tu kad upisem make dobijem ovo
cc -g -O2 -DHAVE_CONFIG_H -DFONTCONFIG_PATH="/etc/fonts" -I.. -I. -o fc-list fc-list.o -L../src -lfontconfig
/usr/bin/ld: cannot find -lfontconfig
collect2: ld returned 1 exit status
make[1]: *** [fc-list] Error 1
medjutim ovdje nakon make install izgleda mi kao da je instalirao mada kad u pango opet upisem make dobijem ovaj zadnji problem.Kod mene je distribucija Mandrake 10.1 Community.Da mi je ovo rijesit , shvatio sam kako ostalo instalirati.
Zašto ti treba gtk ? :rolleyes:
Ili upgrade Xft2 paketa:
http://mail-index.netbsd.org/tech-pkg/2004/09/16/0003.html
Ili da popravis taj freetype.h. (provjereno radi
Pogledaj kako je to uradjeno na Slackware 10.0 (freetype 2.1.9):
/usr/include/freetype2/freetype/freetype.h
/***************************************************************************/
/* */
/* If you think breaking almost 100% of all source that links with */
/* freetype (anything using a configure file for sure) is a good idea, */
/* then feel free to uncomment this block. */
/* */
/* #ifndef FT_FREETYPE_H */
/* #error "`ft2build.h' hasn't been included yet!" */
/* #error "Please always use macros to include FreeType header files." */
/* #error "Example:" */
/* #error " #include <ft2build.h>" */
/* #error " #include FT_FREETYPE_H" */
/* #endif */
/***************************************************************************/
btw, otkud ti freetype instaliran u /usr/local?
Problem sa instalacijom više verzija istog paketa je što se može desiti da kompajliraš naspram jedne verzije (u /usr/local), a da program prilikom izvođenja koristi druge verzije tih biblioteka (npr. iz /usr/lib, umjesto iz /usr/local/lib)
Što ne reče odmah, evo ti RPM paketi gotovi:
http://wwwra.informatik.uni-rostock.de/~waschk/Mandrake/gnome2.7/
Nemoj da te ono 7 u imenu zbuni to je ustvari gnome 2.8 za 10.1 community.
Zašto ti treba gtk ? :rolleyes:[/quote]
Treba mi gaim-vv i trazi mi to da instaliram , mada ima jos nekih aplikacija koje mi trazi gtk.
/usr/include/setjmp.h:42: error: syntax error before "__jmp_buf"
/usr/include/setjmp.h:45: error: syntax error before '}' token
/usr/include/setjmp.h:50: error: syntax error before "__env"
make[2]: *** [fc-lang.o] Error 1
popravio sam freetype.h , sad mi se ovo javlja