1 <refentry id="gtk-building" revision="6 Sept 2001">
3 <refentrytitle>Compiling the GTK+ package</refentrytitle>
4 <manvolnum>3</manvolnum>
5 <refmiscinfo>GTK Library</refmiscinfo>
9 <refname>Compiling the GTK+ Package</refname>
11 How to compile GTK+ itself
15 <refsect1 id="building">
16 <title>Building the Library on UNIX</title>
18 On UNIX, GTK+ uses the standard GNU build system,
19 using <application>autoconf</application> for package
20 configuration and resolving portability issues,
21 <application>automake</application> for building makefiles
22 that comply with the GNU Coding Standards, and
23 <application>libtool</application> for building shared
24 libraries on multiple platforms. The normal sequence for
25 compiling and installing the GTK+ library is thus:
28 <userinput>./configure</userinput>
29 <userinput>make</userinput>
30 <userinput>make install</userinput>
35 The standard options provided by <application>GNU
36 autoconf</application> may be passed to the
37 <command>configure</command> script. Please see the
38 <application>autoconf</application> documentation or run
39 <command>./configure --help</command> for information about
44 <refsect1 id="extra-configuration-options">
45 <title>Extra Configuration Options</title>
48 In addition to the normal options, the
49 <command>configure</command> script in the GTK+
50 library supports these additional arguments:
53 <command>configure</command>
56 <arg>--disable-modules</arg>
57 <arg>--enable-modules</arg>
60 <arg>--with-included-loaders==LOADER1,LOADER2,...</arg>
63 <arg>--disable-gtk-doc</arg>
64 <arg>--enable-gtk-doc</arg>
67 <arg>--with-gdktarget=[x11|linux-fb]</arg>
70 <arg>--disable-shadowfb</arg>
71 <arg>--enable-shadowfb</arg>
77 <title><systemitem>--disable-modules</systemitem> and
78 <systemitem>--enable-modules</systemitem></title>
81 Normally GTK+ will try to build the GdkPixbuf image file
82 format loaders as little shared libraries that are loaded on
83 demand. The <systemitem>--disable-modules</systemitem>
84 argument indicates that they should all be built statically
85 into the GTK+ library instead. This is useful for
86 people who need to produce statically-linked binaries. If
87 neither <systemitem>--disable-modules</systemitem> nor
88 <systemitem>--enable-modules</systemitem> is specified, then
89 the <command>configure</command> script will try to
90 auto-detect whether shared modules work on your system.
95 <title><systemitem>--with-included-loaders</systemitem></title>
98 This option allows you to specify which image loaders you
99 want to include; for example, you might include only the PNG
100 loader to create a smaller GdkPixbuf binary.
105 <title><systemitem>--disable-gtk-doc</systemitem> and
106 <systemitem>--enable-gtk-doc</systemitem></title>
109 By default the <command>configure</command> script will try
110 to auto-detect whether the
111 <application>gtk-doc</application> package is installed. If
112 it is, then it will use it to extract and build the
113 documentation for the GTK+ library. These options
114 can be used to explicitly control whether gtk-doc should be
115 used or not. If it is not used, the distributed,
116 pre-generated HTML files will be installed instead of
117 building them on your machine.
122 <title><systemitem>--with-gdktarget</systemitem></title>
125 Toggles between the x11 and linux-fb backends for GDK.
131 <title><systemitem>--disable-shadowfb</systemitem> and
132 <systemitem>--enable-shadowfb</systemitem></title>
135 Toggles shadow framebuffer support for the linux-fb target,