[Python-checkins] r43588 - python/trunk/README

anthony.baxter python-checkins at python.org
Mon Apr 3 16:16:28 CEST 2006


Author: anthony.baxter
Date: Mon Apr  3 16:16:27 2006
New Revision: 43588

Modified:
   python/trunk/README
Log:
added sqlite3 section
expanded tabs
fixed a couple of typos
removed .cvsignore reference


Modified: python/trunk/README
==============================================================================
--- python/trunk/README	(original)
+++ python/trunk/README	Mon Apr  3 16:16:27 2006
@@ -89,7 +89,7 @@
 authors, translators, and people with special formatting requirements.
 
 Unfortunately, new-style classes (new in Python 2.2) have not yet been
-integrated into Python's standard documention.  A collection of
+integrated into Python's standard documentation.  A collection of
 pointers to what has been written is at:
 
     http://www.python.org/doc/newstyle.html
@@ -114,7 +114,7 @@
 mailing lists: see http://www.python.org/community/lists.html for an
 overview of these and many other Python-related mailing lists.
 
-Archives are accessible via the Google Groups usenet archive; see
+Archives are accessible via the Google Groups Usenet archive; see
 http://groups.google.com/.  The mailing lists are also archived, see
 http://www.python.org/community/lists.html for details.
 
@@ -257,28 +257,28 @@
 above) so we can remove them!)
 
 Unix platforms: If your vendor still ships (and you still use) Berkeley DB
-	1.85 you will need to edit Modules/Setup to build the bsddb185
-	module and add a line to sitecustomize.py which makes it the
-	default.  In Modules/Setup a line like
+        1.85 you will need to edit Modules/Setup to build the bsddb185
+        module and add a line to sitecustomize.py which makes it the
+        default.  In Modules/Setup a line like
 
-	    bsddb185 bsddbmodule.c
+            bsddb185 bsddbmodule.c
 
-	should work.  (You may need to add -I, -L or -l flags to direct the
-	compiler and linker to your include files and libraries.)
+        should work.  (You may need to add -I, -L or -l flags to direct the
+        compiler and linker to your include files and libraries.)
 
 XXX I think this next bit is out of date:
 
 64-bit platforms: The modules audioop, imageop and rgbimg don't work.
-	The setup.py script disables them on 64-bit installations.
-	Don't try to enable them in the Modules/Setup file.  They
-	contain code that is quite wordsize sensitive.  (If you have a
-	fix, let us know!)
+        The setup.py script disables them on 64-bit installations.
+        Don't try to enable them in the Modules/Setup file.  They
+        contain code that is quite wordsize sensitive.  (If you have a
+        fix, let us know!)
 
 Solaris: When using Sun's C compiler with threads, at least on Solaris
-	2.5.1, you need to add the "-mt" compiler option (the simplest
-	way is probably to specify the compiler with this option as
-	the "CC" environment variable when running the configure
-	script).
+        2.5.1, you need to add the "-mt" compiler option (the simplest
+        way is probably to specify the compiler with this option as
+        the "CC" environment variable when running the configure
+        script).
 
         When using GCC on Solaris, beware of binutils 2.13 or GCC
         versions built using it.  This mistakenly enables the
@@ -290,136 +290,136 @@
         and 2.8, but may also affect earlier and later versions of the
         OS.
 
-	When the dynamic loader complains about errors finding shared
-	libraries, such as
+        When the dynamic loader complains about errors finding shared
+        libraries, such as
 
-	ld.so.1: ./python: fatal: libstdc++.so.5: open failed:
-	No such file or directory
+        ld.so.1: ./python: fatal: libstdc++.so.5: open failed:
+        No such file or directory
 
-	you need to first make sure that the library is available on
-	your system. Then, you need to instruct the dynamic loader how
-	to find it. You can choose any of the following strategies:
-
-	1. When compiling Python, set LD_RUN_PATH to the directories
-	   containing missing libraries.
-	2. When running Python, set LD_LIBRARY_PATH to these directories.
-	3. Use crle(8) to extend the search path of the loader.
-	4. Modify the installed GCC specs file, adding -R options into the
-	   *link: section.
+        you need to first make sure that the library is available on
+        your system. Then, you need to instruct the dynamic loader how
+        to find it. You can choose any of the following strategies:
+
+        1. When compiling Python, set LD_RUN_PATH to the directories
+           containing missing libraries.
+        2. When running Python, set LD_LIBRARY_PATH to these directories.
+        3. Use crle(8) to extend the search path of the loader.
+        4. Modify the installed GCC specs file, adding -R options into the
+           *link: section.
 
         The complex object fails to compile on Solaris 10 with gcc 3.4 (at
         least up to 3.4.3).  To work around it, define Py_HUGE_VAL as
         HUGE_VAL(), e.g.:
 
           make CPPFLAGS='-D"Py_HUGE_VAL=HUGE_VAL()" -I. -I$(srcdir)/Include'
-	  ./python setup.py CPPFLAGS='-D"Py_HUGE_VAL=HUGE_VAL()"'
+          ./python setup.py CPPFLAGS='-D"Py_HUGE_VAL=HUGE_VAL()"'
 
 Linux:  A problem with threads and fork() was tracked down to a bug in
-	the pthreads code in glibc version 2.0.5; glibc version 2.0.7
-	solves the problem.  This causes the popen2 test to fail;
-	problem and solution reported by Pablo Bleyer.
+        the pthreads code in glibc version 2.0.5; glibc version 2.0.7
+        solves the problem.  This causes the popen2 test to fail;
+        problem and solution reported by Pablo Bleyer.
 
 Red Hat Linux: Red Hat 9 built Python2.2 in UCS-4 mode and hacked
-	Tcl to support it. To compile Python2.3 with Tkinter, you will
-	need to pass --enable-unicode=ucs4 flag to ./configure.
+        Tcl to support it. To compile Python2.3 with Tkinter, you will
+        need to pass --enable-unicode=ucs4 flag to ./configure.
 
-	There's an executable /usr/bin/python which is Python
-	1.5.2 on most older Red Hat installations; several key Red Hat tools
-	require this version.  Python 2.1.x may be installed as
-	/usr/bin/python2.  The Makefile installs Python as
-	/usr/local/bin/python, which may or may not take precedence
-	over /usr/bin/python, depending on how you have set up $PATH.
+        There's an executable /usr/bin/python which is Python
+        1.5.2 on most older Red Hat installations; several key Red Hat tools
+        require this version.  Python 2.1.x may be installed as
+        /usr/bin/python2.  The Makefile installs Python as
+        /usr/local/bin/python, which may or may not take precedence
+        over /usr/bin/python, depending on how you have set up $PATH.
 
 FreeBSD 3.x and probably platforms with NCurses that use libmytinfo or
-	similar: When using cursesmodule, the linking is not done in
-	the correct order with the defaults.  Remove "-ltermcap" from
-	the readline entry in Setup, and use as curses entry: "curses
-	cursesmodule.c -lmytinfo -lncurses -ltermcap" - "mytinfo" (so
-	called on FreeBSD) should be the name of the auxiliary library
-	required on your platform.  Normally, it would be linked
-	automatically, but not necessarily in the correct order.
-
-BSDI:	BSDI versions before 4.1 have known problems with threads,
-	which can cause strange errors in a number of modules (for
-	instance, the 'test_signal' test script will hang forever.)
-	Turning off threads (with --with-threads=no) or upgrading to
-	BSDI 4.1 solves this problem.
+        similar: When using cursesmodule, the linking is not done in
+        the correct order with the defaults.  Remove "-ltermcap" from
+        the readline entry in Setup, and use as curses entry: "curses
+        cursesmodule.c -lmytinfo -lncurses -ltermcap" - "mytinfo" (so
+        called on FreeBSD) should be the name of the auxiliary library
+        required on your platform.  Normally, it would be linked
+        automatically, but not necessarily in the correct order.
+
+BSDI:   BSDI versions before 4.1 have known problems with threads,
+        which can cause strange errors in a number of modules (for
+        instance, the 'test_signal' test script will hang forever.)
+        Turning off threads (with --with-threads=no) or upgrading to
+        BSDI 4.1 solves this problem.
 
 DEC Unix: Run configure with --with-dec-threads, or with
-	--with-threads=no if no threads are desired (threads are on by
-	default).  When using GCC, it is possible to get an internal
-	compiler error if optimization is used.  This was reported for
-	GCC 2.7.2.3 on selectmodule.c.  Manually compile the affected
-	file without optimization to solve the problem.
+        --with-threads=no if no threads are desired (threads are on by
+        default).  When using GCC, it is possible to get an internal
+        compiler error if optimization is used.  This was reported for
+        GCC 2.7.2.3 on selectmodule.c.  Manually compile the affected
+        file without optimization to solve the problem.
 
 DEC Ultrix: compile with GCC to avoid bugs in the native compiler,
-	and pass SHELL=/bin/sh5 to Make when installing.
+        and pass SHELL=/bin/sh5 to Make when installing.
 
-AIX:	A complete overhaul of the shared library support is now in
-	place.  See Misc/AIX-NOTES for some notes on how it's done.
-	(The optimizer bug reported at this place in previous releases
-	has been worked around by a minimal code change.) If you get
-	errors about pthread_* functions, during compile or during
-	testing, try setting CC to a thread-safe (reentrant) compiler,
-	like "cc_r".  For full C++ module support, set CC="xlC_r" (or
-	CC="xlC" without thread support).
+AIX:    A complete overhaul of the shared library support is now in
+        place.  See Misc/AIX-NOTES for some notes on how it's done.
+        (The optimizer bug reported at this place in previous releases
+        has been worked around by a minimal code change.) If you get
+        errors about pthread_* functions, during compile or during
+        testing, try setting CC to a thread-safe (reentrant) compiler,
+        like "cc_r".  For full C++ module support, set CC="xlC_r" (or
+        CC="xlC" without thread support).
 
 AIX 5.3: To build a 64-bit version with IBM's compiler, I used the
         following:
 
         export PATH=/usr/bin:/usr/vacpp/bin
-	./configure --with-gcc="xlc_r -q64" --with-cxx="xlC_r -q64" \
+        ./configure --with-gcc="xlc_r -q64" --with-cxx="xlC_r -q64" \
                     --disable-ipv6 AR="ar -X64"
-	make
+        make
 
 HP-UX:  When using threading, you may have to add -D_REENTRANT to the
-	OPT variable in the top-level Makefile; reported by Pat Knight,
-	this seems to make a difference (at least for HP-UX 10.20)
-	even though pyconfig.h defines it. This seems unnecessary when
-	using HP/UX 11 and later - threading seems to work "out of the
-	box".
+        OPT variable in the top-level Makefile; reported by Pat Knight,
+        this seems to make a difference (at least for HP-UX 10.20)
+        even though pyconfig.h defines it. This seems unnecessary when
+        using HP/UX 11 and later - threading seems to work "out of the
+        box".
 
 HP-UX ia64: When building on the ia64 (Itanium) platform using HP's
-	compiler, some experience has shown that the compiler's
-	optimiser produces a completely broken version of python
-	(see http://www.python.org/sf/814976). To work around this,
-	edit the Makefile and remove -O from the OPT line.
-
-	To build a 64-bit executable on an Itanium 2 system using HP's
-	compiler, use these environment variables:
-
-		CC=cc
-		CXX=aCC
-		BASECFLAGS="+DD64"
-		LDFLAGS="+DD64 -lxnet"
-
-	and call configure as:
-
-		./configure --without-gcc
-
-	then *unset* the environment variables again before running
-	make.  (At least one of these flags causes the build to fail
-	if it remains set.)  You still have to edit the Makefile and
-	remove -O from the OPT line.
+        compiler, some experience has shown that the compiler's
+        optimiser produces a completely broken version of python
+        (see http://www.python.org/sf/814976). To work around this,
+        edit the Makefile and remove -O from the OPT line.
+
+        To build a 64-bit executable on an Itanium 2 system using HP's
+        compiler, use these environment variables:
+
+                CC=cc
+                CXX=aCC
+                BASECFLAGS="+DD64"
+                LDFLAGS="+DD64 -lxnet"
+
+        and call configure as:
+
+                ./configure --without-gcc
+
+        then *unset* the environment variables again before running
+        make.  (At least one of these flags causes the build to fail
+        if it remains set.)  You still have to edit the Makefile and
+        remove -O from the OPT line.
 
 HP PA-RISC 2.0: A recent bug report (http://www.python.org/sf/546117)
-	suggests that the C compiler in this 64-bit system has bugs
-	in the optimizer that break Python.  Compiling without
-	optimization solves the problems.
-
-SCO:	The following apply to SCO 3 only; Python builds out of the box
-	on SCO 5 (or so we've heard).
-
-	1) Everything works much better if you add -U__STDC__ to the
-	defs.  This is because all the SCO header files are broken.
-	Anything that isn't mentioned in the C standard is
-	conditionally excluded when __STDC__ is defined.
-
-	2) Due to the U.S. export restrictions, SCO broke the crypt
-	stuff out into a separate library, libcrypt_i.a so the LIBS
-	needed be set to:
+        suggests that the C compiler in this 64-bit system has bugs
+        in the optimizer that break Python.  Compiling without
+        optimization solves the problems.
+
+SCO:    The following apply to SCO 3 only; Python builds out of the box
+        on SCO 5 (or so we've heard).
+
+        1) Everything works much better if you add -U__STDC__ to the
+        defs.  This is because all the SCO header files are broken.
+        Anything that isn't mentioned in the C standard is
+        conditionally excluded when __STDC__ is defined.
+
+        2) Due to the U.S. export restrictions, SCO broke the crypt
+        stuff out into a separate library, libcrypt_i.a so the LIBS
+        needed be set to:
 
-		LIBS=' -lsocket -lcrypt_i'
+                LIBS=' -lsocket -lcrypt_i'
 
 UnixWare: There are known bugs in the math library of the system, as well as
         problems in the handling of threads (calling fork in one
@@ -427,61 +427,61 @@
         tests involving threads will fail until those problems are fixed.
 
 SunOS 4.x: When using the SunPro C compiler, you may want to use the
-	'-Xa' option instead of '-Xc', to enable some needed non-ANSI
-	Sunisms.
-	THIS SYSTEM IS NO LONGER SUPPORTED.
+        '-Xa' option instead of '-Xc', to enable some needed non-ANSI
+        Sunisms.
+        THIS SYSTEM IS NO LONGER SUPPORTED.
 
 NeXT:   Not supported anymore. Start with the MacOSX/Darwin code if you
-	want to revive it.
+        want to revive it.
 
-QNX:	Chris Herborth (chrish at qnx.com) writes:
-	configure works best if you use GNU bash; a port is available on
-	ftp.qnx.com in /usr/free.  I used the following process to build,
-	test and install Python 1.5.x under QNX:
+QNX:    Chris Herborth (chrish at qnx.com) writes:
+        configure works best if you use GNU bash; a port is available on
+        ftp.qnx.com in /usr/free.  I used the following process to build,
+        test and install Python 1.5.x under QNX:
 
-	1) CONFIG_SHELL=/usr/local/bin/bash CC=cc RANLIB=: \
-	    ./configure --verbose --without-gcc --with-libm=""
+        1) CONFIG_SHELL=/usr/local/bin/bash CC=cc RANLIB=: \
+            ./configure --verbose --without-gcc --with-libm=""
 
-	2) edit Modules/Setup to activate everything that makes sense for
-	   your system... tested here at QNX with the following modules:
+        2) edit Modules/Setup to activate everything that makes sense for
+           your system... tested here at QNX with the following modules:
 
-		array, audioop, binascii, cPickle, cStringIO, cmath,
-		crypt, curses, errno, fcntl, gdbm, grp, imageop,
-		_locale, math, md5, new, operator, parser, pcre,
-		posix, pwd, readline, regex, reop, rgbimg, rotor,
-		select, signal, socket, soundex, strop, struct,
-		syslog, termios, time, timing, zlib, audioop, imageop, rgbimg
+                array, audioop, binascii, cPickle, cStringIO, cmath,
+                crypt, curses, errno, fcntl, gdbm, grp, imageop,
+                _locale, math, md5, new, operator, parser, pcre,
+                posix, pwd, readline, regex, reop, rgbimg, rotor,
+                select, signal, socket, soundex, strop, struct,
+                syslog, termios, time, timing, zlib, audioop, imageop, rgbimg
 
-	3) make SHELL=/usr/local/bin/bash
+        3) make SHELL=/usr/local/bin/bash
 
-	   or, if you feel the need for speed:
+           or, if you feel the need for speed:
 
-	   make SHELL=/usr/local/bin/bash OPT="-5 -Oil+nrt"
+           make SHELL=/usr/local/bin/bash OPT="-5 -Oil+nrt"
 
-	4) make SHELL=/usr/local/bin/bash test
+        4) make SHELL=/usr/local/bin/bash test
 
-	   Using GNU readline 2.2 seems to behave strangely, but I
-	   think that's a problem with my readline 2.2 port.  :-\
+           Using GNU readline 2.2 seems to behave strangely, but I
+           think that's a problem with my readline 2.2 port.  :-\
 
-	5) make SHELL=/usr/local/bin/bash install
+        5) make SHELL=/usr/local/bin/bash install
 
-	If you get SIGSEGVs while running Python (I haven't yet, but
-	I've only run small programs and the test cases), you're
-	probably running out of stack; the default 32k could be a
-	little tight.  To increase the stack size, edit the Makefile
-	to read: LDFLAGS = -N 48k
+        If you get SIGSEGVs while running Python (I haven't yet, but
+        I've only run small programs and the test cases), you're
+        probably running out of stack; the default 32k could be a
+        little tight.  To increase the stack size, edit the Makefile
+        to read: LDFLAGS = -N 48k
 
-BeOS:	See Misc/BeOS-NOTES for notes about compiling/installing
-	Python on BeOS R3 or later.  Note that only the PowerPC
-	platform is supported for R3; both PowerPC and x86 are
-	supported for R4.
+BeOS:   See Misc/BeOS-NOTES for notes about compiling/installing
+        Python on BeOS R3 or later.  Note that only the PowerPC
+        platform is supported for R3; both PowerPC and x86 are
+        supported for R4.
 
 Cray T3E: Mark Hadfield (m.hadfield at niwa.co.nz) writes:
-	Python can be built satisfactorily on a Cray T3E but based on
-	my experience with the NIWA T3E (2002-05-22, version 2.2.1)
-	there are a few bugs and gotchas. For more information see a
-	thread on comp.lang.python in May 2002 entitled "Building
-	Python on Cray T3E".
+        Python can be built satisfactorily on a Cray T3E but based on
+        my experience with the NIWA T3E (2002-05-22, version 2.2.1)
+        there are a few bugs and gotchas. For more information see a
+        thread on comp.lang.python in May 2002 entitled "Building
+        Python on Cray T3E".
 
         1) Use Cray's cc and not gcc. The latter was reported not to
            work by Konrad Hinsen. It may work now, but it may not.
@@ -491,45 +491,45 @@
 
              MACHDEP=unicosmk
 
-	2) Run configure with option "--enable-unicode=ucs4".
+        2) Run configure with option "--enable-unicode=ucs4".
 
-	3) The Cray T3E does not support dynamic linking, so extension
-	   modules have to be built by adding (or uncommenting) lines
-	   in Modules/Setup. The minimum set of modules is
-
-	     posix, new, _sre, unicodedata
-
-	   On NIWA's vanilla T3E system the following have also been
-	   included successfully:
-
-	     _codecs, _locale, _socket, _symtable, _testcapi, _weakref
-	     array, binascii, cmath, cPickle, crypt, cStringIO, dbm
-	     errno, fcntl, grp, math, md5, operator, parser, pcre, pwd
-	     regex, rotor, select, struct, strop, syslog, termios
-	     time, timing, xreadlines
-
-	4) Once the python executable and library have been built, make
-	   will execute setup.py, which will attempt to build remaining
-	   extensions and link them dynamically. Each of these attempts
-	   will fail but should not halt the make process. This is
-	   normal.
-
-	5) Running "make test" uses a lot of resources and causes
-	   problems on our system. You might want to try running tests
-	   singly or in small groups.
-
-SGI:	SGI's standard "make" utility (/bin/make or /usr/bin/make)
-	does not check whether a command actually changed the file it
-	is supposed to build.  This means that whenever you say "make"
-	it will redo the link step.  The remedy is to use SGI's much
-	smarter "smake" utility (/usr/sbin/smake), or GNU make.  If
-	you set the first line of the Makefile to #!/usr/sbin/smake
-	smake will be invoked by make (likewise for GNU make).
-
-	WARNING: There are bugs in the optimizer of some versions of
-	SGI's compilers that can cause bus errors or other strange
-	behavior, especially on numerical operations.  To avoid this,
-	try building with "make OPT=".
+        3) The Cray T3E does not support dynamic linking, so extension
+           modules have to be built by adding (or uncommenting) lines
+           in Modules/Setup. The minimum set of modules is
+
+             posix, new, _sre, unicodedata
+
+           On NIWA's vanilla T3E system the following have also been
+           included successfully:
+
+             _codecs, _locale, _socket, _symtable, _testcapi, _weakref
+             array, binascii, cmath, cPickle, crypt, cStringIO, dbm
+             errno, fcntl, grp, math, md5, operator, parser, pcre, pwd
+             regex, rotor, select, struct, strop, syslog, termios
+             time, timing, xreadlines
+
+        4) Once the python executable and library have been built, make
+           will execute setup.py, which will attempt to build remaining
+           extensions and link them dynamically. Each of these attempts
+           will fail but should not halt the make process. This is
+           normal.
+
+        5) Running "make test" uses a lot of resources and causes
+           problems on our system. You might want to try running tests
+           singly or in small groups.
+
+SGI:    SGI's standard "make" utility (/bin/make or /usr/bin/make)
+        does not check whether a command actually changed the file it
+        is supposed to build.  This means that whenever you say "make"
+        it will redo the link step.  The remedy is to use SGI's much
+        smarter "smake" utility (/usr/sbin/smake), or GNU make.  If
+        you set the first line of the Makefile to #!/usr/sbin/smake
+        smake will be invoked by make (likewise for GNU make).
+
+        WARNING: There are bugs in the optimizer of some versions of
+        SGI's compilers that can cause bus errors or other strange
+        behavior, especially on numerical operations.  To avoid this,
+        try building with "make OPT=".
 
 OS/2:   If you are running Warp3 or Warp4 and have IBM's VisualAge C/C++
         compiler installed, just change into the pc\os2vacpp directory
@@ -569,8 +569,8 @@
         additions.
 
         Some people have reported problems building Python after using "fink"
-        to install additional unix software. Disabling fink (remove all references
-        to /sw from your .profile or .login) should solve this.
+        to install additional unix software. Disabling fink (remove all 
+        references to /sw from your .profile or .login) should solve this.
 
         You may want to try the configure option "--enable-framework"
         which installs Python as a framework. The location can be set
@@ -602,8 +602,8 @@
 
         #SSL=/usr/local/ssl
         #_socket socketmodule.c \
-        #	-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
-        #	-L$(SSL)/lib -lssl -lcrypto
+        #       -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
+        #       -L$(SSL)/lib -lssl -lcrypto
 
         and remove "local/" from the SSL variable.  Finally, just run
         "make"!
@@ -648,69 +648,69 @@
 
 AtheOS: From Octavian Cerna <tavy at ylabs.com>:
 
-	Before building:
+        Before building:
 
-	    Make sure you have shared versions of the libraries you
-	    want to use with Python. You will have to compile them
-	    yourself, or download precompiled packages.
+            Make sure you have shared versions of the libraries you
+            want to use with Python. You will have to compile them
+            yourself, or download precompiled packages.
 
-	    Recommended libraries:
+            Recommended libraries:
 
-		ncurses-4.2
-		readline-4.2a
-		zlib-1.1.4
+                ncurses-4.2
+                readline-4.2a
+                zlib-1.1.4
 
-	Build:
+        Build:
 
-	    $ ./configure --prefix=/usr/python
-	    $ make
+            $ ./configure --prefix=/usr/python
+            $ make
 
-	    Python is always built as a shared library, otherwise
-	    dynamic loading would not work.
+            Python is always built as a shared library, otherwise
+            dynamic loading would not work.
 
-	Testing:
+        Testing:
 
-	    $ make test
+            $ make test
 
-	Install:
+        Install:
 
-	    # make install
-	    # pkgmanager -a /usr/python
+            # make install
+            # pkgmanager -a /usr/python
 
 
-	AtheOS issues:
+        AtheOS issues:
 
-	    - large file support: due to a stdio bug in glibc/libio,
-	      access to large files may not work correctly.  fseeko()
-	      tries to seek to a negative offset.  ftello() returns a
-	      negative offset, it looks like a 32->64bit
-	      sign-extension issue.  The lowlevel functions (open,
-	      lseek, etc) are OK.
-	    - sockets: AF_UNIX is defined in the C library and in
-	      Python, but not implemented in the system.
-	    - select: poll is available in the C library, but does not
-	      work (It does not return POLLNVAL for bad fds and
-	      hangs).
-	    - posix: statvfs and fstatvfs always return ENOSYS.
-	    - disabled modules:
-		- mmap: not yet implemented in AtheOS
-		- nis: broken (on an unconfigured system
-		  yp_get_default_domain() returns junk instead of
-		  error)
-		- dl: dynamic loading doesn't work via dlopen()
-		- resource: getrimit and setrlimit are not yet
-		  implemented
+            - large file support: due to a stdio bug in glibc/libio,
+              access to large files may not work correctly.  fseeko()
+              tries to seek to a negative offset.  ftello() returns a
+              negative offset, it looks like a 32->64bit
+              sign-extension issue.  The lowlevel functions (open,
+              lseek, etc) are OK.
+            - sockets: AF_UNIX is defined in the C library and in
+              Python, but not implemented in the system.
+            - select: poll is available in the C library, but does not
+              work (It does not return POLLNVAL for bad fds and
+              hangs).
+            - posix: statvfs and fstatvfs always return ENOSYS.
+            - disabled modules:
+                - mmap: not yet implemented in AtheOS
+                - nis: broken (on an unconfigured system
+                  yp_get_default_domain() returns junk instead of
+                  error)
+                - dl: dynamic loading doesn't work via dlopen()
+                - resource: getrimit and setrlimit are not yet
+                  implemented
 
-	    - if you are getting segmentation faults, you probably are
-	      low on memory.  AtheOS doesn't handle very well an
-	      out-of-memory condition and simply SEGVs the process.
+            - if you are getting segmentation faults, you probably are
+              low on memory.  AtheOS doesn't handle very well an
+              out-of-memory condition and simply SEGVs the process.
 
-	Tested on:
+        Tested on:
 
-	    AtheOS-0.3.7
-	    gcc-2.95
-	    binutils-2.10
-	    make-3.78
+            AtheOS-0.3.7
+            gcc-2.95
+            binutils-2.10
+            make-3.78
 
 
 Configuring the bsddb and dbm modules
@@ -728,6 +728,17 @@
 other preferred alternatives (ndbm, gdbm) are not found, though
 versions of the Sleepycat library prior to 3.1 are not considered.
 
+Building the sqlite3 module
+---------------------------
+
+To build the sqlite3 module, you'll need the sqlite3 or libsqlite3
+packages installed, including the header files. Many modern operating
+systems distribute the headers in a separate package to the library -
+often it will be the same name as the main package, but with a -dev or
+-devel suffix. 
+
+The version of pysqlite2 that's including in Python needs sqlite3 3.0.8
+or later. setup.py attempts to check that it can find a correct version.
 
 Configuring threads
 -------------------
@@ -757,17 +768,17 @@
     SunOS 5.{1-5}/{gcc,SunPro cc}/solaris   -mt
     SunOS 5.5/{gcc,SunPro cc}/POSIX         (nothing)
     DEC OSF/1 3.x/cc/DCE                    -threads
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     Digital UNIX 4.x/cc/DCE                 -threads
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     Digital UNIX 4.x/cc/POSIX               -pthread
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     AIX 4.1.4/cc_r/d7                       (nothing)
-	    (buhrt at iquest.net)
+            (buhrt at iquest.net)
     AIX 4.1.4/cc_r4/DCE                     (nothing)
-	    (buhrt at iquest.net)
+            (buhrt at iquest.net)
     IRIX 6.2/cc/POSIX                       (nothing)
-	    (robertl at cwi.nl)
+            (robertl at cwi.nl)
 
 
 Linker (ld) libraries and flags for threads
@@ -778,15 +789,15 @@
     SunOS 5.{1-5}/solaris               -lthread
     SunOS 5.5/POSIX                     -lpthread
     DEC OSF/1 3.x/DCE                   -lpthreads -lmach -lc_r -lc
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     Digital UNIX 4.x/DCE                -lpthreads -lpthread -lmach -lexc -lc
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     Digital UNIX 4.x/POSIX              -lpthread -lmach -lexc -lc
-	    (butenhof at zko.dec.com)
+            (butenhof at zko.dec.com)
     AIX 4.1.4/{draft7,DCE}              (nothing)
-	    (buhrt at iquest.net)
+            (buhrt at iquest.net)
     IRIX 6.2/POSIX                      -lpthread
-	    (jph at emilia.engr.sgi.com)
+            (jph at emilia.engr.sgi.com)
 
 
 Building a shared libpython
@@ -896,7 +907,7 @@
 *don't* include the output of "make test".  It is useless.  Run the
 failing test manually, as follows:
 
-	./python ./Lib/test/test_whatever.py
+        ./python ./Lib/test/test_whatever.py
 
 (substituting the top of the source tree for '.' if you built in a
 different directory).  This runs the test in verbose mode.
@@ -909,7 +920,7 @@
 (see below), include files, configuration files, and the manual page,
 just type
 
-	make install
+        make install
 
 This will install all platform-independent files in subdirectories of
 the directory given with the --prefix option to configure or to the
@@ -934,7 +945,7 @@
 If you have a previous installation of Python that you don't
 want to replace yet, use
 
-	make altinstall
+        make altinstall
 
 This installs the same set of files as "make install" except it
 doesn't create the hard link to "python<version>" named "python" and
@@ -963,77 +974,77 @@
 Modules/getpath.o.
 
 --with(out)-gcc: The configure script uses gcc (the GNU C compiler) if
-	it finds it.  If you don't want this, or if this compiler is
-	installed but broken on your platform, pass the option
-	--without-gcc.  You can also pass "CC=cc" (or whatever the
-	name of the proper C compiler is) in the environment, but the
-	advantage of using --without-gcc is that this option is
-	remembered by the config.status script for its --recheck
-	option.
+        it finds it.  If you don't want this, or if this compiler is
+        installed but broken on your platform, pass the option
+        --without-gcc.  You can also pass "CC=cc" (or whatever the
+        name of the proper C compiler is) in the environment, but the
+        advantage of using --without-gcc is that this option is
+        remembered by the config.status script for its --recheck
+        option.
 
 --prefix, --exec-prefix: If you want to install the binaries and the
-	Python library somewhere else than in /usr/local/{bin,lib},
-	you can pass the option --prefix=DIRECTORY; the interpreter
-	binary will be installed as DIRECTORY/bin/python and the
-	library files as DIRECTORY/lib/python/*.  If you pass
-	--exec-prefix=DIRECTORY (as well) this overrides the
-	installation prefix for architecture-dependent files (like the
-	interpreter binary).  Note that --prefix=DIRECTORY also
-	affects the default module search path (sys.path), when
-	Modules/config.c is compiled.  Passing make the option
-	prefix=DIRECTORY (and/or exec_prefix=DIRECTORY) overrides the
-	prefix set at configuration time; this may be more convenient
-	than re-running the configure script if you change your mind
-	about the install prefix.
+        Python library somewhere else than in /usr/local/{bin,lib},
+        you can pass the option --prefix=DIRECTORY; the interpreter
+        binary will be installed as DIRECTORY/bin/python and the
+        library files as DIRECTORY/lib/python/*.  If you pass
+        --exec-prefix=DIRECTORY (as well) this overrides the
+        installation prefix for architecture-dependent files (like the
+        interpreter binary).  Note that --prefix=DIRECTORY also
+        affects the default module search path (sys.path), when
+        Modules/config.c is compiled.  Passing make the option
+        prefix=DIRECTORY (and/or exec_prefix=DIRECTORY) overrides the
+        prefix set at configuration time; this may be more convenient
+        than re-running the configure script if you change your mind
+        about the install prefix.
 
 --with-readline: This option is no longer supported.  GNU
-	readline is automatically enabled by setup.py when present.
+        readline is automatically enabled by setup.py when present.
 
 --with-threads: On most Unix systems, you can now use multiple
-	threads, and support for this is enabled by default.  To
-	disable this, pass --with-threads=no.  If the library required
-	for threads lives in a peculiar place, you can use
-	--with-thread=DIRECTORY.  IMPORTANT: run "make clean" after
-	changing (either enabling or disabling) this option, or you
-	will get link errors!  Note: for DEC Unix use
-	--with-dec-threads instead.
+        threads, and support for this is enabled by default.  To
+        disable this, pass --with-threads=no.  If the library required
+        for threads lives in a peculiar place, you can use
+        --with-thread=DIRECTORY.  IMPORTANT: run "make clean" after
+        changing (either enabling or disabling) this option, or you
+        will get link errors!  Note: for DEC Unix use
+        --with-dec-threads instead.
 
 --with-sgi-dl: On SGI IRIX 4, dynamic loading of extension modules is
-	supported by the "dl" library by Jack Jansen, which is
-	ftp'able from ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z.
-	This is enabled (after you've ftp'ed and compiled the dl
-	library) by passing --with-sgi-dl=DIRECTORY where DIRECTORY
-	is the absolute pathname of the dl library.  (Don't bother on
-	IRIX 5, it already has dynamic linking using SunOS style
-	shared libraries.)  THIS OPTION IS UNSUPPORTED.
+        supported by the "dl" library by Jack Jansen, which is
+        ftp'able from ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z.
+        This is enabled (after you've ftp'ed and compiled the dl
+        library) by passing --with-sgi-dl=DIRECTORY where DIRECTORY
+        is the absolute pathname of the dl library.  (Don't bother on
+        IRIX 5, it already has dynamic linking using SunOS style
+        shared libraries.)  THIS OPTION IS UNSUPPORTED.
 
 --with-dl-dld: Dynamic loading of modules is rumored to be supported
-	on some other systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent
-	Symmetry (Dynix), and Atari ST.  This is done using a
-	combination of the GNU dynamic loading package
-	(ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z) and an
-	emulation of the SGI dl library mentioned above (the emulation
-	can be found at
-	ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z).  To
-	enable this, ftp and compile both libraries, then call
-	configure, passing it the option
-	--with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where DL_DIRECTORY is
-	the absolute pathname of the dl emulation library and
-	DLD_DIRECTORY is the absolute pathname of the GNU dld library.
-	(Don't bother on SunOS 4 or 5, they already have dynamic
-	linking using shared libraries.)  THIS OPTION IS UNSUPPORTED.
+        on some other systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent
+        Symmetry (Dynix), and Atari ST.  This is done using a
+        combination of the GNU dynamic loading package
+        (ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z) and an
+        emulation of the SGI dl library mentioned above (the emulation
+        can be found at
+        ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z).  To
+        enable this, ftp and compile both libraries, then call
+        configure, passing it the option
+        --with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where DL_DIRECTORY is
+        the absolute pathname of the dl emulation library and
+        DLD_DIRECTORY is the absolute pathname of the GNU dld library.
+        (Don't bother on SunOS 4 or 5, they already have dynamic
+        linking using shared libraries.)  THIS OPTION IS UNSUPPORTED.
 
 --with-libm, --with-libc: It is possible to specify alternative
-	versions for the Math library (default -lm) and the C library
-	(default the empty string) using the options
-	--with-libm=STRING and --with-libc=STRING, respectively.  For
-	example, if your system requires that you pass -lc_s to the C
-	compiler to use the shared C library, you can pass
-	--with-libc=-lc_s. These libraries are passed after all other
-	libraries, the C library last.
+        versions for the Math library (default -lm) and the C library
+        (default the empty string) using the options
+        --with-libm=STRING and --with-libc=STRING, respectively.  For
+        example, if your system requires that you pass -lc_s to the C
+        compiler to use the shared C library, you can pass
+        --with-libc=-lc_s. These libraries are passed after all other
+        libraries, the C library last.
 
 --with-libs='libs': Add 'libs' to the LIBS that the python interpreter
-	is linked against.
+        is linked against.
 
 --with-cxx=<compiler>: Some C++ compilers require that main() is
         compiled with the C++ if there is any C++ code in the application.
@@ -1045,15 +1056,15 @@
 
 
 --with-pydebug:  Enable additional debugging code to help track down
-	memory management problems.  This allows printing a list of all
-	live objects when the interpreter terminates.
+        memory management problems.  This allows printing a list of all
+        live objects when the interpreter terminates.
 
 --with(out)-universal-newlines: enable reading of text files with
-	foreign newline convention (default: enabled). In other words,
-	any of \r, \n or \r\n is acceptable as end-of-line character.
-	If enabled import and execfile will automatically accept any newline
-	in files. Python code can open a file with open(file, 'U') to
-	read it in universal newline mode. THIS OPTION IS UNSUPPORTED.
+        foreign newline convention (default: enabled). In other words,
+        any of \r, \n or \r\n is acceptable as end-of-line character.
+        If enabled import and execfile will automatically accept any newline
+        in files. Python code can open a file with open(file, 'U') to
+        read it in universal newline mode. THIS OPTION IS UNSUPPORTED.
 
 --with-tsc: Profile using the Pentium timestamping counter (TSC).
 
@@ -1076,13 +1087,13 @@
 in /usr/tmp/python (assuming ~guido/src/python is the toplevel
 directory and you want to build in /usr/tmp/python):
 
-	$ mkdir /usr/tmp/python
-	$ cd /usr/tmp/python
-	$ ~guido/src/python/configure
-	[...]
-	$ make
-	[...]
-	$
+        $ mkdir /usr/tmp/python
+        $ cd /usr/tmp/python
+        $ ~guido/src/python/configure
+        [...]
+        $ make
+        [...]
+        $
 
 Note that configure copies the original Setup file to the build
 directory if it finds no Setup file there.  This means that you can
@@ -1179,13 +1190,12 @@
 Most subdirectories have their own README files.  Most files have
 comments.
 
-.cvsignore	Additional filename matching patterns for CVS to ignore
-BeOS/		Files specific to the BeOS port
+BeOS/           Files specific to the BeOS port
 Demo/           Demonstration scripts, modules and programs
-Doc/		Documentation sources (LaTeX)
+Doc/            Documentation sources (LaTeX)
 Grammar/        Input for the parser generator
 Include/        Public header files
-LICENSE		Licensing information
+LICENSE         Licensing information
 Lib/            Python library modules
 Mac/            Macintosh specific resources
 Makefile.pre.in Source from which config.status creates the Makefile.pre
@@ -1193,7 +1203,7 @@
 Modules/        Implementation of most built-in modules
 Objects/        Implementation of most built-in object types
 PC/             Files specific to PC ports (DOS, Windows, OS/2)
-PCbuild/	Build directory for Microsoft Visual C++
+PCbuild/        Build directory for Microsoft Visual C++
 Parser/         The parser and tokenizer and their input handling
 Python/         The byte-compiler and interpreter
 README          The file you're reading now
@@ -1202,6 +1212,7 @@
 configure       Configuration shell script (GNU autoconf output)
 configure.in    Configuration specification (input for GNU autoconf)
 install-sh      Shell script used to install files
+setup.py        Python script used to build extension modules
 
 The following files will (may) be created in the toplevel directory by
 the configuration and build processes:
@@ -1213,8 +1224,8 @@
 pyconfig.h      Configuration header
 config.log      Log from last configure run
 config.status   Status from last run of the configure script
-getbuildinfo.o	Object file from Modules/getbuildinfo.c
-libpython<version>.a	The library archive
+getbuildinfo.o  Object file from Modules/getbuildinfo.c
+libpython<version>.a    The library archive
 python          The executable interpreter
 tags, TAGS      Tags files for vi and Emacs
 


More information about the Python-checkins mailing list