README.beos - Perl version 5.8+ on BeOS
This file contains instructions how to build Perl under BeOS and lists known problems.
I have built and tested Perl 5.8.6 and 5.9.1 under BeOS R5 x86 net server. I can't say anything with regard to PPC. Since Perl 5.8.0 had been released for BeOS BONE, I suspect, there is a good chance, that it still compiles on a BONE system. The only change I've made, that affects BONE systems is the recognition of whether it is a BONE system or not inhints/beos.sh. Now network socket support should remain enabled on BONE systems. This might as well break the build, though.
As more recent versions of autoconf require flock() support, I wrote a flock() emulation (flock_server) and released it on BeBits:
http://www.bebits.com/app/4030If you want to build a Perl with flock() support, you have to install this package first.
With flock() support:
CFLAGS=-I/path/to/flock/server/headers ./configure.gnu \--prefix=/boot/home/configReplace/path/to/flock/server/headers with the path to the directory containing theflock.h header.
Without flock() support:
./configure.gnu --prefix=/boot/home/configWith flock() support:
make LDLOADLIBS="-lnet -lflock"Without flock() support:
make LDLOADLIBS="-lnet"-lnet is needed on net server systems only and if the compiler doesn't add it automatically (Be's R5 gcc does, Oliver Tappe's gcc 2.95.3 does not).
Install all perl files:
make installCreate a symlink for libperl:
cd ~/config/lib; ln -s perl5/5.8.6/BePC-beos/CORE/libperl.so .Replace5.8.6 with your respective version of Perl.
Network socket support is disabled for BeOS R5 net server. I didn't dare yet to try enabling it and see what problems occur.
The LFS (large file support) tests (t/op/lfs andxt/Fcntl/t/syslfs) are disabled as seeking beyond 2 GB is broken according to jhi@iki.fi who was the last one checking the BeOS port and updating this file before me. Haven't checked this myself.
Thet/io/fflush test fails at #6. As far as I can tell, this is caused by a bug in the BeOS pipes implementation that occurs when starting other child processes. In the particular test case asystem("perl -e 0") flushes the stdout pipe of another child process.
Theext/POSIX/t/waitpid test fails at #1. After all child processes are gone BeOS' waitpid(-1,...) returns 0 instead of -1 (as it should). No idea how to fix this.
For BeOS specifics problems feel free to mail to: Ingo Weinhold <bonefish@cs.tu-berlin.de>
Last update: 2004-12-16
Perldoc Browser is maintained by Dan Book (DBOOK). Please contact him via theGitHub issue tracker oremail regarding any issues with the site itself, search, or rendering of documentation.
The Perl documentation is maintained by the Perl 5 Porters in the development of Perl. Please contact them via thePerl issue tracker, themailing list, orIRC to report any issues with the contents or format of the documentation.