Compiling the GTK+ package 3 GTK Library Compiling the GTK+ Package How to compile GTK+ itself Building the Library on UNIX On UNIX, GTK+ uses the standard GNU build system, using autoconf for package configuration and resolving portability issues, automake for building makefiles that comply with the GNU Coding Standards, and libtool for building shared libraries on multiple platforms. The normal sequence for compiling and installing the GTK+ library is thus: ./configure make make install The standard options provided by GNU autoconf may be passed to the configure script. Please see the autoconf documentation or run ./configure --help for information about the standard options. Extra Configuration Options In addition to the normal options, the configure script in the GTK+ library supports these additional arguments: configure --disable-modules --enable-modules --with-included-loaders==LOADER1,LOADER2,... --enable-debug=[no|minimum|yes] --disable-shm --enable-shm --disable-xim --enable-xim --disable-xim-inst --enable-xim-inst --disable-xkb --enable-xkb --disable-gtk-doc --enable-gtk-doc --with-xinput=[no|gxi|xfree] --with-gdktarget=[x11|linux-fb|win32] --disable-shadowfb --enable-shadowfb <systemitem>--disable-modules</systemitem> and <systemitem>--enable-modules</systemitem> Normally GTK+ will try to build the GdkPixbuf image file format loaders as little shared libraries that are loaded on demand. The --disable-modules argument indicates that they should all be built statically into the GTK+ library instead. This is useful for people who need to produce statically-linked binaries. If neither --disable-modules nor --enable-modules is specified, then the configure script will try to auto-detect whether shared modules work on your system. <systemitem>--with-included-loaders</systemitem> This option allows you to specify which image loaders you want to include; for example, you might include only the PNG loader to create a smaller GdkPixbuf binary. <systemitem>--enable-debug</systemitem> Turns on various amounts of debugging support. Setting this to 'no' disables g_assert(), g_return_if_fail(), g_return_val_if_fail() and all cast checks between different object types. Setting it to 'minimum' disables only cast checks. Setting it to 'yes' enables runtime debugging. The default is 'minimum'. Note that 'no' is fast, but dangerous as it tends to destabilize even mostly bug-free software by changing the effect of many bugs from simple warnings into fatal crashes. Thus should not be used for stable releases of gtk+. <systemitem>--disable-shm</systemitem> and <systemitem>--enable-shm</systemitem> These options can be used to control whether GTK+ will use shared memory to communicate with the X server when possible. The default is yes. <systemitem>--disable-xim</systemitem> and <systemitem>--enable-xim</systemitem> These options can be used to control whether GTK+ will be compiled with support for XIM. The default is yes. <systemitem>--disable-xim-inst</systemitem> and <systemitem>--enable-xim-inst</systemitem> These options determine whether GTK+ will use the XIM instantiate callback. The default is yes, unless the host system is Solaris, where XRegisterIMInstantiateCallback seems to cause a segfault. <systemitem>--disable-xkb</systemitem> and <systemitem>--enable-xkb</systemitem> By default the configure script will try to auto-detect whether the XKB extension is supported by the X libraries GTK+ is linked with. These options can be used to explicitly control whether GTK+ will support the XKB extension. <systemitem>--disable-gtk-doc</systemitem> and <systemitem>--enable-gtk-doc</systemitem> By default the configure script will try to auto-detect whether the gtk-doc package is installed. If it is, then it will use it to extract and build the documentation for the GTK+ library. These options can be used to explicitly control whether gtk-doc should be used or not. If it is not used, the distributed, pre-generated HTML files will be installed instead of building them on your machine. <systemitem>--with-xinput</systemitem> <systemitem>--with-gdktarget</systemitem> Toggles between the supported backends for GDK. The default is x11, unless the platform is Windows, in which case the default is win32. <systemitem>--disable-shadowfb</systemitem> and <systemitem>--enable-shadowfb</systemitem> Toggles shadow framebuffer support for the linux-fb target, if selected.