69 lines
1.7 KiB
Plaintext
69 lines
1.7 KiB
Plaintext
Python for AtheOS
|
|
|
|
|
|
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.
|
|
|
|
Recommended libraries:
|
|
|
|
ncurses-4.2
|
|
readline-4.2a
|
|
zlib-1.1.4
|
|
|
|
Build:
|
|
|
|
$ ./configure --prefix=/usr/python
|
|
$ make
|
|
|
|
Python is always built as a shared library, otherwise dynamic loading
|
|
would not work.
|
|
|
|
Testing:
|
|
|
|
$ make test
|
|
|
|
Install:
|
|
|
|
# make install
|
|
# pkgmanager -a /usr/python
|
|
|
|
|
|
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
|
|
|
|
- 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:
|
|
|
|
AtheOS-0.3.7
|
|
gcc-2.95
|
|
binutils-2.10
|
|
make-3.78
|
|
|
|
|
|
--
|
|
Octavian Cerna <tavy@ylabs.com>
|