os/persistentdata/persistentstorage/sqlite3api/TEST/TCL/tcldistribution/unix/README
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
Tcl UNIX README
sl@0
     2
---------------
sl@0
     3
sl@0
     4
RCS: @(#) $Id: README,v 1.24.2.2 2005/12/03 00:35:44 das Exp $
sl@0
     5
sl@0
     6
This is the directory where you configure, compile, test, and install
sl@0
     7
UNIX versions of Tcl.  This directory also contains source files for Tcl
sl@0
     8
that are specific to UNIX.  Some of the files in this directory are
sl@0
     9
used on the PC or Mac platform too, but they all depend on UNIX
sl@0
    10
(POSIX/ANSI C) interfaces and some of them only make sense under UNIX.
sl@0
    11
sl@0
    12
Updated forms of the information found in this file is available at:
sl@0
    13
	http://www.tcl.tk/doc/howto/compile.html#unix
sl@0
    14
sl@0
    15
For information on platforms where Tcl is known to compile, along
sl@0
    16
with any porting notes for getting it to work on those platforms, see:
sl@0
    17
	http://www.tcl.tk/software/tcltk/platforms.html
sl@0
    18
sl@0
    19
The rest of this file contains instructions on how to do this.  The
sl@0
    20
release should compile and run either "out of the box" or with trivial
sl@0
    21
changes on any UNIX-like system that approximates POSIX, BSD, or System
sl@0
    22
V.  We know that it runs on workstations from Sun, H-P, DEC, IBM, and
sl@0
    23
SGI, as well as PCs running Linux, BSDI, and SCO UNIX.  To compile for
sl@0
    24
a PC running Windows, see the README file in the directory ../win.  To
sl@0
    25
compile for Max OS X, see the README in the directory ../macosx.  To
sl@0
    26
compile for a classic Macintosh, see the README file in the directory ../mac.
sl@0
    27
sl@0
    28
How To Compile And Install Tcl:
sl@0
    29
-------------------------------
sl@0
    30
sl@0
    31
(a) If you have already compiled Tcl once in this directory and are now
sl@0
    32
    preparing to compile again in the same directory but for a different
sl@0
    33
    platform, or if you have applied patches, type "make distclean" to
sl@0
    34
    discard all the configuration information computed previously.
sl@0
    35
sl@0
    36
(b) If you need to reconfigure because you changed any of the .in or
sl@0
    37
    .m4 files, you will need to run autoconf to create a new
sl@0
    38
    ./configure script. Most users will NOT need to do this since
sl@0
    39
    a configure script is already provided.
sl@0
    40
sl@0
    41
    (in the tcl/unix directory)
sl@0
    42
    autoconf
sl@0
    43
sl@0
    44
(c) Type "./configure".  This runs a configuration script created by GNU
sl@0
    45
    autoconf, which configures Tcl for your system and creates a
sl@0
    46
    Makefile.  The configure script allows you to customize the Tcl
sl@0
    47
    configuration for your site; for details on how you can do this,
sl@0
    48
    type "./configure -help" or refer to the autoconf documentation (not
sl@0
    49
    included here).  Tcl's "configure" supports the following special
sl@0
    50
    switches in addition to the standard ones:
sl@0
    51
	--enable-threads	If this switch is set, Tcl will compile
sl@0
    52
				itself with multithreading support.
sl@0
    53
	--disable-load		If this switch is specified then Tcl will
sl@0
    54
				configure itself not to allow dynamic loading,
sl@0
    55
				even if your system appears to support it.
sl@0
    56
				Normally you can leave this switch out and
sl@0
    57
				Tcl will build itself for dynamic loading
sl@0
    58
				if your system supports it.
sl@0
    59
	--enable-shared		If this switch is specified, Tcl will compile
sl@0
    60
				itself as a shared library if it can figure
sl@0
    61
				out how to do that on this platform.  This
sl@0
    62
				is the default on platforms where we know
sl@0
    63
				how to build shared libraries.
sl@0
    64
	--disable-shared	If this switch is specified, Tcl will compile
sl@0
    65
				itself as a static library.
sl@0
    66
	--enable-symbols	build with debugging symbols.  By default
sl@0
    67
				standard debugging symbols are used.  You
sl@0
    68
				can specify the value "mem" to include
sl@0
    69
				TCL_MEM_DEBUG memory debugging, "compile"
sl@0
    70
				to include TCL_COMPILE_DEBUG debugging, or
sl@0
    71
				"all" to enable all internal debugging.
sl@0
    72
	--disable-symbols	build without debugging symbols
sl@0
    73
	--enable-64bit		enable 64bit support (where applicable)
sl@0
    74
	--disable-64bit		disable 64bit support (where applicable)
sl@0
    75
	--enable-64bit-vis	enable 64bit Sparc VIS support
sl@0
    76
	--disable-64bit-vis	disable 64bit Sparc VIS support
sl@0
    77
	--enable-langinfo	Allows use of modern nl_langinfo check for
sl@0
    78
				better localization support.  This is on by
sl@0
    79
				default on platforms where nl_langinfo is
sl@0
    80
				found.
sl@0
    81
	--disable-langinfo	Specifically disables use of nl_langinfo.
sl@0
    82
	--enable-man-symlinks	Use symlinks for linking the manpages that
sl@0
    83
				should be reachable under several names.
sl@0
    84
	--enable-man-compression=PROG
sl@0
    85
				Compress the manpages using PROG.
sl@0
    86
    Mac OS X only: 
sl@0
    87
	--enable-framework	package Tcl as a framework.
sl@0
    88
	--disable-corefoundation disable use of CoreFoundation API and revert to
sl@0
    89
				standard select based notifier, required when
sl@0
    90
				using naked fork (i.e. not followed by execve).
sl@0
    91
sl@0
    92
    Note: by default gcc will be used if it can be located on the PATH.
sl@0
    93
    if you want to use cc instead of gcc, set the CC environment variable
sl@0
    94
    to "cc" before running configure. It is not safe to edit the
sl@0
    95
    Makefile to use gcc after configure is run. Also note that
sl@0
    96
    you should use the same compiler when building extensions.
sl@0
    97
sl@0
    98
    Note: be sure to use only absolute path names (those starting with "/")
sl@0
    99
    in the --prefix and --exec-prefix options.
sl@0
   100
sl@0
   101
(d) Type "make".  This will create a library archive called
sl@0
   102
    "libtcl<version>.a" or "libtcl<version>.so" and an interpreter
sl@0
   103
    application called "tclsh" that allows you to type Tcl commands
sl@0
   104
    interactively or execute script files.
sl@0
   105
sl@0
   106
(e) If the make fails then you'll have to personalize the Makefile
sl@0
   107
    for your site or possibly modify the distribution in other ways.
sl@0
   108
    First check the porting Web page above to see if there are hints
sl@0
   109
    for compiling on your system.  If you need to modify Makefile,
sl@0
   110
    are comments at the beginning of it that describe the things you
sl@0
   111
    might want to change and how to change them.
sl@0
   112
sl@0
   113
(f) Type "make install" to install Tcl binaries and script files in
sl@0
   114
    standard places.  You'll need write permission on the installation
sl@0
   115
    directories to do this.  The installation directories are
sl@0
   116
    determined by the "configure" script and may be specified with
sl@0
   117
    the --prefix and --exec-prefix options to "configure".  See the
sl@0
   118
    Makefile for information on what directories were chosen; you
sl@0
   119
    can override these choices by modifying the "prefix" and
sl@0
   120
    "exec_prefix" variables in the Makefile.
sl@0
   121
sl@0
   122
(g) At this point you can play with Tcl by running "make shell"
sl@0
   123
    and typing Tcl commands at the prompt.
sl@0
   124
sl@0
   125
If you have trouble compiling Tcl, see the URL noted above about working
sl@0
   126
platforms.  It contains information that people have provided about changes
sl@0
   127
they had to make to compile Tcl in various environments.  We're also
sl@0
   128
interested in hearing how to change the configuration setup so that Tcl
sl@0
   129
compiles on additional platforms "out of the box".
sl@0
   130
sl@0
   131
Test suite
sl@0
   132
----------
sl@0
   133
sl@0
   134
There is a relatively complete test suite for all of the Tcl core in
sl@0
   135
the subdirectory "tests".  To use it just type "make test" in this
sl@0
   136
directory.  You should then see a printout of the test files processed.
sl@0
   137
If any errors occur, you'll see a much more substantial printout for
sl@0
   138
each error.  See the README file in the "tests" directory for more
sl@0
   139
information on the test suite.  Note: don't run the tests as superuser:
sl@0
   140
this will cause several of them to fail.  If a test is failing
sl@0
   141
consistently, please send us a bug report with as much detail as you
sl@0
   142
can manage.  Please use the online database at
sl@0
   143
	http://tcl.sourceforge.net/
sl@0
   144
sl@0
   145
The Tcl test suite is very sensitive to proper implementation of
sl@0
   146
ANSI C library procedures such as sprintf and sscanf.  If the test
sl@0
   147
suite generates errors, most likely they are due to non-conformance
sl@0
   148
of your system's ANSI C library;  such problems are unlikely to
sl@0
   149
affect any real applications so it's probably safe to ignore them.