Simple install procedure
========================
- % gzip -cd glib-2.0.1.tar.gz | tar xvf - # unpack the sources
- % cd glib-2.0.1 # change to the toplevel directory
+ % gzip -cd glib-2.6.1.tar.gz | tar xvf - # unpack the sources
+ % cd glib-2.6.1 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GLIB
Note that if you have libiconv installed in your default include
search path (for instance, in /usr/local/), but don't enable
-it, you will get an error while compiling GTK+ because the
+it, you will get an error while compiling GLib because the
iconv.h that libiconv installs hides the system iconv.
+If you are using the native iconv implementation on Solaris
+instead of libiconv, you'll need to make sure that you have
+the converters between locale encodings and UTF-8 installed.
+At a minimum you'll need the SUNWuiu8 package. You probably
+should also install the SUNWciu8, SUNWhiu8, SUNWjiu8, and
+SUNWkiu8 packages.
+
The native iconv on Compaq Tru64 doesn't contain support for
UTF-8, so you'll need to use GNU libiconv instead. (When
-using GNU libiconv for GTK+, you'll need to use GNU libiconv
+using GNU libiconv for GLib, you'll need to use GNU libiconv
for GNU gettext as well.) This probably applies to related
operating systems as well.
-Finally, for message catalog handling, GTK+ requires an implementation
+Finally, for message catalog handling, GLib requires an implementation
of gettext(). If your system doesn't provide this functionality,
you should use the libintl library from the GNU gettext package,
available from:
The Nitty-Gritty
================
-The 'configure' script can be given a number of options to enable
-and disable various features. For a complete list, type:
-
- ./configure --help
-
-A few of the more important ones:
-
-* --prefix=PREFIX install architecture-independent files in PREFIX
- [ Defaults to /usr/local ]
-
-* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [ Defaults to the value given to --prefix ]
-
-* --enable-gc-friendly When enabled all memory freed by the application,
- but retained by GLib for performance reasons
- is set to zero, thus making deployed garbage
- collection or memory profiling tools detect
- unlinked memory correctly. This will make GLib
- slightly slower.
- [ Disabled by default ]
-
-* --disable-threads Do not compile GLib to be multi thread safe. GLib
- will be slightly faster then. This is however not
- recommended, as many programs rely on GLib being
- multi thread safe.
- [ Enabled by default ]
-
-* --with-threads=[none/posix/dce/solaris/win32] Specify a thread
- implementation to use.
- * 'posix' and 'dce' can be used interchangeable
- to mean the different versions of posix
- threads. configure tries to find out, which
- one is installed.
- * 'solaris' uses the native Solaris thread
- implementation.
- * 'none' means that GLib will be thread safe,
- but does not have a default thread
- implementation. This has to be supplied to
- g_thread_init() by the programmer.
- [ Determined by configure by default ]
-
-Options can be given to the compiler and linker by setting
-environment variables before running configure. A few of the more
-important ones:
-
- CC : The C compiler to use
- CPPFLAGS : Flags for the C preprocesser such as -I and -D
- CFLAGS : C compiler flags
-
-The most important use of this is to set the
-optimization/debugging flags. For instance, to compile with no
-debugging information at all, run configure as:
-
- CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
-
-or,
-
- setenv CFLAGS -O2 ; ./configure # csh and variants
+Complete information about installing GLib can be found
+in the file:
+
+ docs/reference/glib/html/glib-building.html
+
+Or online at:
+
+ http://developer.gnome.org/doc/API/2.0/glib/glib-building.html
Installation directories
.pc files for the various libraries are installed in
$exec_prefix/lib/pkgconfig to provide information when compiling
-other packages that depend on GTK+. If you set PKG_CONFIG_PATH
+other packages that depend on GLib. If you set PKG_CONFIG_PATH
so that it points to this directory, then you can get the
correct include flags and library flags for compiling a GLib
application with:
pkg-config --cflags glib-2.0
pkg-config --libs glib-2.0
+
+Cross-compiling GLib
+====================
+
+Information about cross-compilation of GLib can be found
+in the file:
+
+ docs/reference/glib/html/glib-cross-compiling.html
+
+Or online at: