Added all documentation.
[python/dscho.git] / BeOS / README
blob989995ad6ebca1b364ab6cb9f7b0c2e1ea3ebd1e
1 Python 1.5.x (x > 1) for BeOS
3 This directory contains several useful things to help you build your own
4 version of Python for BeOS.
6 What's Here?
8 ar-fake - A shell script used by the build process to emulate a "real"
9           POSIX ar command; helps to build the Python shared library.
11 dl_export.h - A header defining the evil magic declaration decorations
12               required for dynamic loading.
14 linkcc - A shell script used by the build process to build the Python
15          shared library.
17 linkmodule - A shell script used by the build process to build the
18              shared library versions of the standard modules; you'll
19              probably need this if you want to build dynamically loaded
20              modules from the Python archives.
22 README - This file (obviously!).
24 README.readline-2.2 - Instructions for compiling/installing GNU readline 2.2.
25                       You'll have to grab the GNU readline source code from 
26                       prep.ai.mit.edu:/pub/GNU or any other GNU mirror.
28                       The Python interpreter is much nicer to work with
29                       interactively if you've got readline installed.  Highly
30                       recommended.
32 Compiling Your Own Version
34 To compile your own version of Python 1.5.x for BeOS (with any luck,
35 Python 1.5.2 and later will compile "out of the box" on BeOS), try this:
37 1) Get the latest Python source code from ftp.python.org.
39 2) Configure with:
41    ./configure --verbose --prefix=/boot/home/config --with-thread
43 3) Copy Modules/Setup.in to Modules/Setup.
45 4) Edit Modules/Setup to turn on all the modules you want built.
47    Make sure you use _socket instead of socket for the name of the
48    socketmodule on BeOS.
50    If you want the modules to be built as shared libraries, instead of as
51    part of the Python shared library, be sure to uncomment the #*shared*
52    line.
54    I've tried the following modules:
56    regex pcre posix signal readline array cmath math strop struct time
57    operator _locale fcntl pwd grp select _socket errno crypt termios
58    audioop imageop rgbimg md5 timing rotor syslog curses new gdbm soundex
59    binascii parser cStringIO cPickle zlib
60    
61    Note that some of these (readline, curses, gdbm, and zlib) require extra
62    libraries that aren't supplied with Python.  If you don't have the extra
63    libs (you can probably get them from GeekGadgets), don't try to use
64    these modules; they won't compile.
66 5) Make:
68    make
70 6) Test:
72    make test
74    Expect the following errors:
76    test_grp crashed -- exceptions.KeyError : getgrnam(): name not found
77    test_pwd failed -- Writing: 'fakename', expected: 'caught e'
78    test_socket crashed -- exceptions.AttributeError : SOCK_RAW
80    These are all due to either partial support for certain things (like
81    sockets), or valid differences between systems.
83    NOTE: On R4/x86, the pause() function is broken; expect the signal
84          module test to crash Python!
86 7) Install:
88    make install
90 8) Enjoy!
92 - Chris Herborth (chrish@beoscentral.com)
93   January 12, 1999