]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - INSTALL
ncurses 5.6 - patch 20080913
[ncurses.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index c67aee65ef741a856f2db2f7af38a5e7bb0d72f7..e338dc73d1853a487808aaa37778e7877c91734b 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,5 @@
 -------------------------------------------------------------------------------
 -------------------------------------------------------------------------------
--- Copyright (c) 1998-2005,2006 Free Software Foundation, Inc.               --
+-- Copyright (c) 1998-2006,2008 Free Software Foundation, Inc.               --
 --                                                                           --
 -- Permission is hereby granted, free of charge, to any person obtaining a   --
 -- copy of this software and associated documentation files (the             --
 --                                                                           --
 -- Permission is hereby granted, free of charge, to any person obtaining a   --
 -- copy of this software and associated documentation files (the             --
@@ -25,7 +25,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: INSTALL,v 1.118 2007/03/11 00:06:53 tom Exp $
+-- $Id: INSTALL,v 1.129 2008/08/23 20:02:46 tom Exp $
 ---------------------------------------------------------------------
              How to install Ncurses/Terminfo on your system
 ---------------------------------------------------------------------
 ---------------------------------------------------------------------
              How to install Ncurses/Terminfo on your system
 ---------------------------------------------------------------------
@@ -149,6 +149,9 @@ INSTALLATION PROCEDURE:
     recent implementation of libiconv.  We have built this configuration on
     Linux using libiconv, sometimes requiring libutf8.
 
     recent implementation of libiconv.  We have built this configuration on
     Linux using libiconv, sometimes requiring libutf8.
 
+    If you configure using the --with-pthread option, a "t" is appended to
+    the library names (e.g., libncursest.a, libncursestw.a).
+
     If you do not specify any models, the normal and debug libraries will be
     configured.  Typing `configure' with no arguments is equivalent to:
 
     If you do not specify any models, the normal and debug libraries will be
     configured.  Typing `configure' with no arguments is equivalent to:
 
@@ -304,6 +307,11 @@ SUMMARY OF CONFIGURE OPTIONS:
        return deceptive results, so you may have to override the configure
        script.  Or you may be building tic for a smaller machine.
 
        return deceptive results, so you may have to override the configure
        script.  Or you may be building tic for a smaller machine.
 
+    --disable-big-strings
+       Disable compile-time optimization of predefined tables which puts
+       all of their strings into a very long string, to reduce relocation
+       overhead.
+
     --disable-database
        Use only built-in data.  The ncurses libraries normally read terminfo
        and termcap data from disk.  You can configure ncurses to have a
     --disable-database
        Use only built-in data.  The ncurses libraries normally read terminfo
        and termcap data from disk.  You can configure ncurses to have a
@@ -493,6 +501,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        may not be accurate, or that your stty settings have disabled the use
        of tabs.
 
        may not be accurate, or that your stty settings have disabled the use
        of tabs.
 
+    --enable-mixed-case
+       Controls whether the filesystem on which the terminfo database resides
+       supports mixed-case filenames (normal for UNIX, but not on other
+       systems).  If you do not specify this option, the configure script
+       checks the current filesystem.
+
     --enable-no-padding
        Compile-in support for the $NCURSES_NO_PADDING environment variable,
        which allows you to suppress the effect of non-mandatory padding in
     --enable-no-padding
        Compile-in support for the $NCURSES_NO_PADDING environment variable,
        which allows you to suppress the effect of non-mandatory padding in
@@ -501,7 +515,8 @@ SUMMARY OF CONFIGURE OPTIONS:
 
     --enable-reentrant
        Compile experimental configuration which improves reentrant use of the
 
     --enable-reentrant
        Compile experimental configuration which improves reentrant use of the
-       library by reducing global and static variables.
+       library by reducing global and static variables.  This option is also
+       set if --with-pthread is used.
 
     --enable-rpath
        Use rpath option when generating shared libraries, and (with some
 
     --enable-rpath
        Use rpath option when generating shared libraries, and (with some
@@ -557,6 +572,13 @@ SUMMARY OF CONFIGURE OPTIONS:
     --enable-warnings
        Turn on GCC compiler warnings.  There should be only a few.
 
     --enable-warnings
        Turn on GCC compiler warnings.  There should be only a few.
 
+    --enable-weak-symbols
+       If the --with-pthread option is set, check if the compiler supports
+       weak-symbols.  If it does, then name the thread-capable library without
+       the "t" (libncurses rather than libncursest), and provide for
+       dynamically loading the pthreads entrypoints at runtime.  This allows
+       one to reduce the number of library files for ncurses.
+
     --enable-wgetch-events
        Compile with experimental wgetch-events code.  See ncurses/README.IZ
 
     --enable-wgetch-events
        Compile with experimental wgetch-events code.  See ncurses/README.IZ
 
@@ -610,20 +632,32 @@ SUMMARY OF CONFIGURE OPTIONS:
        to do this if the target compiler has unusual flags which confuse the
        host compiler.
 
        to do this if the target compiler has unusual flags which confuse the
        host compiler.
 
+       You can also set the environment variable $BUILD_CFLAGS rather than
+       use this option.
+
     --with-build-cppflags=XXX
        If cross-compiling, specify the host C preprocessor-flags.  You might
        need to do this if the target compiler has unusual flags which confuse
        the host compiler.
 
     --with-build-cppflags=XXX
        If cross-compiling, specify the host C preprocessor-flags.  You might
        need to do this if the target compiler has unusual flags which confuse
        the host compiler.
 
+       You can also set the environment variable $BUILD_CPPFLAGS rather than
+       use this option.
+
     --with-build-ldflags=XXX
        If cross-compiling, specify the host linker-flags.  You might need to
        do this if the target linker has unusual flags which confuse the host
        compiler.
 
     --with-build-ldflags=XXX
        If cross-compiling, specify the host linker-flags.  You might need to
        do this if the target linker has unusual flags which confuse the host
        compiler.
 
+       You can also set the environment variable $BUILD_LDFLAGS rather than
+       use this option.
+
     --with-build-libs=XXX
        If cross-compiling, the host libraries.  You might need to do this if
        the target environment requires unusual libraries.
 
     --with-build-libs=XXX
        If cross-compiling, the host libraries.  You might need to do this if
        the target environment requires unusual libraries.
 
+       You can also set the environment variable $BUILD_LIBS rather than
+       use this option.
+
     --with-caps=XXX
        Specify an alternate terminfo capabilities file, which makes the
        configure script look for "include/Caps.XXX".  A few systems, e.g.,
     --with-caps=XXX
        Specify an alternate terminfo capabilities file, which makes the
        configure script look for "include/Caps.XXX".  A few systems, e.g.,
@@ -683,10 +717,16 @@ SUMMARY OF CONFIGURE OPTIONS:
 
        See also --without-dlsym
 
 
        See also --without-dlsym
 
-    --with-hashed-db
+    --with-hashed-db[=XXX]
        Use a hashed database for storing terminfo data rather than storing
        each compiled entry in a separate binary file within a directory
        tree.
        Use a hashed database for storing terminfo data rather than storing
        each compiled entry in a separate binary file within a directory
        tree.
+       
+       In particular, this uses the Berkeley database 1.8.5 interface, as
+       provided by that and its successors db 2, 3, and 4.  The actual
+       interface is slightly different in the successor versions of the
+       Berkeley database.  The database should have been configured using
+       "--enable-compat185".
 
        If you use this option for configuring ncurses, tic will only be able
        to write entries in the hashed database.  infocmp can still read
 
        If you use this option for configuring ncurses, tic will only be able
        to write entries in the hashed database.  infocmp can still read
@@ -698,6 +738,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        You cannot have a directory containing both hashed-database and
        filesystem-based terminfo entries.
 
        You cannot have a directory containing both hashed-database and
        filesystem-based terminfo entries.
 
+       Use the parameter value to give the install-prefix used for the
+       datbase, e.g.,
+               --with-hashed-db=/usr/local/BigBase
+       to find the corresponding include- and lib-directories under the
+       given directory.
+
        See also the --enable-getcap option.
 
     --with-install-prefix=XXX
        See also the --enable-getcap option.
 
     --with-install-prefix=XXX
@@ -768,6 +814,14 @@ SUMMARY OF CONFIGURE OPTIONS:
        may be unsigned.  Use this option if you need to preserve compatibility
        with 64-bit executables.
 
        may be unsigned.  Use this option if you need to preserve compatibility
        with 64-bit executables.
 
+    --with-normal
+       Generate normal (i.e., static) libraries (default).
+
+       Note:  on Linux, the configure script will attempt to use the GPM
+       library via the dlsym() function call.  Use --without-dlsym to disable
+       this feature, or --without-gpm, depending on whether you wish to use
+       GPM.
+
     --with-ospeed=TYPE
        Override type of ospeed variable, which is part of the termcap
        compatibility interface.  In termcap, this is a 'short', which works
     --with-ospeed=TYPE
        Override type of ospeed variable, which is part of the termcap
        compatibility interface.  In termcap, this is a 'short', which works
@@ -781,18 +835,15 @@ SUMMARY OF CONFIGURE OPTIONS:
        those using termcap, do not use the higher speeds.  Your application
        (or system, in general) may or may not.
 
        those using termcap, do not use the higher speeds.  Your application
        (or system, in general) may or may not.
 
-    --with-normal
-       Generate normal (i.e., static) libraries (default).
-
-       Note:  on Linux, the configure script will attempt to use the GPM
-       library via the dlsym() function call.  Use --without-dlsym to disable
-       this feature, or --without-gpm, depending on whether you wish to use
-       GPM.
-
     --with-profile
        Generate profile-libraries These are named by adding "_p" to the root,
        e.g., libncurses_p.a
 
     --with-profile
        Generate profile-libraries These are named by adding "_p" to the root,
        e.g., libncurses_p.a
 
+    --with-pthread
+       Link with POSIX threads, set --enable-reentrant.  The use_window() and
+       use_screen() functions will use mutex's, allowing rudimentary support
+       for multithreaded applications.
+
     --with-rcs-ids
        Compile-in RCS identifiers.  Most of the C files have an identifier.
 
     --with-rcs-ids
        Compile-in RCS identifiers.  Most of the C files have an identifier.
 
@@ -866,6 +917,12 @@ SUMMARY OF CONFIGURE OPTIONS:
        library.  As in termlib, there is no ABI difference between the
        "wide" libticw.so and libtic.so
 
        library.  As in termlib, there is no ABI difference between the
        "wide" libticw.so and libtic.so
 
+       NOTE: Overriding the name of the tic library may be useful if you are
+       also using the --with-termlib option to rename libtinfo.  If you are
+       not doing that, renaming the tic library can result in conflicting
+       library dependencies for tic and other programs built with the tic
+       library.
+
     --with-trace
        Configure the trace() function as part of the all models of the ncurses
        library.  Normally it is part of the debug (libncurses_g) library only.
     --with-trace
        Configure the trace() function as part of the all models of the ncurses
        library.  Normally it is part of the debug (libncurses_g) library only.