X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=INSTALL.in;h=1edc7e9c2308ff8d128207b7a0a9fec220272f2b;hb=d4c39ffb96567b7182e8f4df1aea35320285bc72;hp=cd43e256c8fbdd7641a884c15fd3887a144f33b8;hpb=23b21c2414dee8492bf3b2075b8f9aaa16c6a328;p=platform%2Fupstream%2Fglib.git diff --git a/INSTALL.in b/INSTALL.in index cd43e25..1edc7e9 100644 --- a/INSTALL.in +++ b/INSTALL.in @@ -1,8 +1,8 @@ Simple install procedure ======================== - % gzip -cd glib-@GLIB_VERSION@.tar.gz | tar xvf - # unpack the sources - % cd glib-@GLIB_VERSION@ # change to the toplevel directory + % tar xf glib-@GLIB_VERSION@.tar.gz # unpack the sources + % cd glib-@GLIB_VERSION@ # change to the toplevel directory % ./configure # run the `configure' script % make # build GLIB @@ -13,6 +13,10 @@ Simple install procedure Requirements ============ +GLib requires a C90-compliant (but not necessarily C99-compliant) C +compiler and libc. On UNIX-like systems, it also assumes compliance +with at least the original 1990 version of POSIX. + GLib-2.0 requires pkg-config, which is tool for tracking the compilation flags needed for libraries. (For each library, a small .pc text file is installed in a standard location that contains the @@ -21,27 +25,27 @@ information.) Information about pkg-config can be found at: http://www.freedesktop.org/software/pkgconfig/ -GNU make (http://www.gnu.org/software/make) is also recommended. +GNU make (http://www.gnu.org/software/make) is also required. In order to implement conversions between character sets, GLib requires an implementation of the standard iconv() routine. Most modern systems will have a suitable implementation, however -many older systems lack an iconv() implementation. On such systems, +many older systems lack an iconv() implementation. On such systems, you must install the libiconv library. This can be found at: http://www.gnu.org/software/libiconv/ If your system has an iconv implementation but you want to use libiconv instead, you can pass the --with-libiconv option to -configure. This forces libiconv to be used. +configure. This forces libiconv to be used. 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 +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 @@ -49,78 +53,37 @@ 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: http://www.gnu.org/software/gettext/ -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 ] +Support for extended attributes and SELinux in GIO requires +libattr and libselinux. -* --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 ] +Some of the mimetype-related functionality in GIO requires the +update-mime-database and update-desktop-database utilities, which +are part of shared-mime-info and desktop-file-utils, respectively. -* --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 ] +GObject uses libffi to implement generic marshalling functionality. -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 Nitty-Gritty +================ -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: +Complete information about installing GLib can be found +in the file: - CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh) + docs/reference/glib/html/glib-building.html -or, +Or online at: - setenv CFLAGS -O2 ; ./configure # csh and variants + https://developer.gnome.org/glib/stable/glib-building.html Installation directories @@ -139,13 +102,25 @@ include file glibconfig.h is installed in: if you have a version in $prefix/include, this is out of date and should be deleted. -.pc files for the various libraries are installed in +.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 -so that it points to this directory, then you can get the +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: + + https://developer.gnome.org/glib/stable/glib-cross-compiling.html