diff options
author | Matthias Clasen <matthiasc@src.gnome.org> | 2003-04-09 18:49:48 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2003-04-09 18:49:48 +0000 |
commit | 754d18b0501ae9b3dae5c5e44e151357de892876 (patch) | |
tree | a2a83aaf4d4dc7457083ea1df6656571643763a2 /INSTALL.in | |
parent | 7b0da6c54aced8d57650f3b5b2b7f40ff648671b (diff) |
Move install docs into reference manual.
Diffstat (limited to 'INSTALL.in')
-rw-r--r-- | INSTALL.in | 220 |
1 files changed, 18 insertions, 202 deletions
diff --git a/INSTALL.in b/INSTALL.in index b38e2ff8d..218125755 100644 --- a/INSTALL.in +++ b/INSTALL.in @@ -37,7 +37,7 @@ 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 @@ -49,11 +49,11 @@ 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: @@ -63,90 +63,14 @@ 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-debug=[yes/no/minimum] determines the amount of debugging - code to include. 'yes' will includes some - extra checks and debugging features that - may be useful for people developing with - GLib. 'no' produces a somewhat smaller and - faster library at the expense of reduced - robustness. - [ Defaults to 'minimum' for stable releases ] - -* --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. - [ --disable-gc-friendly is default ] - -* --disable-mem-pools Do not cache freed objects. When specified, - GLib will immediately return freed memory - to the C library instead of keeping around - pools of free objects such as linked list - and hash table nodes. Specifying this - will make GLib slower in most cases, but it - will use less memory. - [ --enable-mem-pools is the 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. - [ --enable-threads is the 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 ] - -* --enable-included-printf=[yes/no/auto] Specify whether to build using - the included copy of the Trio library - for string formatting functions like printf(). - The default is 'auto', which means that - Trio will be used if configure detects - missing features in your system native - printf implementation. - -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 @@ -167,7 +91,7 @@ and should be deleted. .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: @@ -179,117 +103,9 @@ application with: Cross-compiling GLib ==================== -Cross-compilation is the proceess of compiling a program or -library on a different architecture or operating system then -it will be run upon. GLib is slightly more difficult to -cross-compile than many packages because much of GLib is -about hiding differences between different systems. - -These notes cover things specific to cross-compiling GLib; -for general information about cross-compilation, see the -autoconf info pages. - -GLib tries to detect as much information as possible about -the target system by compiling and linking programs without -actually running anything; however, some information GLib -needs is not available this way. This information needs -to be provided to the configure script via a "cache file" -or by setting the cache variables in your environment. - -As an example of using a cache file, to cross compile for -the "MingW32" Win32 runtine environment on a Linux system, -create a file 'win32.cache' with the following contents: - -=== -glib_cv_long_long_format=ll -glib_cv_stack_grows=no -=== - -Then execute the following commands: - -=== -PATH=/path/to/mingw32-compiler/bin:$PATH -chmod a-w win32.cache # prevent configure from changing it -./configure --cache-file=win32.cache --host=mingw32 -=== - -The complete list of cache file variables follows. Most -of these won't need to be set in most cases. - -Cache file variables -==================== - -glib_cv_long_long_format=[ll/q/I64] - - Format used by printf and scanf for 64 bit integers. "ll" is - the C99 standard, and what is used by the 'trio' library - that GLib builds if your printf() is insufficiently capable. - Doesn't need to be set if you are compiling using trio. - -glib_cv_stack_grows=[yes/no] - - Whether the stack grows up or down. Most places will want "no", - A few architectures, such as PA-RISC need "yes". - -glib_cv_working_bcopy=[yes/no] - - Whether your bcopy can handle overlapping copies. Only needs to be set - if you don't have memmove. (Very unlikely) - -glib_cv_sane_realloc=[yes/np] - - Whether your realloc() conforms to ANSI C and can handle NULL as - the first argument. Defaults to "yes" and probably doesn't need to be set. - -glib_cv_have_strlcpy=[yes/no] - - Whether you have strlcpy that matches OpenBSD. Defaults to "no", - which is safe, since GLib uses a built-in version in that case. - -glib_cv_va_val_copy=[yes/no] - - Whether va_list can be copied as a pointer. If set to "no", - then memcopy will be used. Only matters if you don't have - va_copy or __va_copy. (So, doesn't matter for GCC.) Defaults - to "yes" which is slightly more common than "no". - -glib_cv_rtldglobal_broken=[yes/no] - - Whether you have a bug found in OSF/1 v5.0. Defaults to "no". - -glib_cv_uscore=[yes/no] - - Whether an underscore needs to be prepended to symbols when - looking them up via dlsym. Only needs to be set if your system - uses dlopen/dlsym. - -ac_cv_func_posix_getpwuid_r=[yes/no] - - Whether you have a getpwuid_r function (in your C library, - not your thread library) that conforms to the POSIX spec. - (Takes a 'struct passwd **' as the final argument) - -ac_cv_func_nonposix_getpwuid_r=[yes/no] - - Whether you have some variant of getpwuid_r that doesn't - conform to to the POSIX spec, but GLib might be able to - use (or might segfault.) Only needs to be set if - ac_cv_func_posix_getpwuid_r is not set. It's safest to set - this to "no". - -glib_cv_use_pid_surrogate=[yes/no] - - Whether to use a setpriority() on the PID of the thread as - a method for setting the priority of threads. This only - needs to be set when using POSIX threads. - -ac_cv_func_printf_unix98=[yes/no] - - Whether your printf() family supports Unix98 style %N$ - positional parameters. Defaults to "no". - -ac_cv_func_vsnprintf_c99=[yes/no] - - Whether you have a vsnprintf() with C99 semantics. (C99 semantics - means returns the number of bytes that would have been written - had the output buffer had enough space.). Defaults to "no". +Information about cross-compilation of GLib can be found +in the file: + + docs/reference/glib/html/glib-cross-compiling.html + +Or online at: |