2 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns=
"http://www.w3.org/1999/xhtml">
5 <title>README.beos - Perl version
5.8+ on BeOS
</title>
6 <meta http-equiv=
"content-type" content=
"text/html; charset=utf-8" />
7 <link rev=
"made" href=
"mailto:" />
10 <body style=
"background-color: white">
11 <table border=
"0" width=
"100%" cellspacing=
"0" cellpadding=
"3">
12 <tr><td class=
"block" style=
"background-color: #cccccc" valign=
"middle">
13 <big><strong><span class=
"block"> README.beos - Perl version
5.8+ on BeOS
</span></strong></big>
17 <p><a name=
"__index__"></a></p>
22 <li><a href=
"#name">NAME
</a></li>
23 <li><a href=
"#description">DESCRIPTION
</a></li>
24 <li><a href=
"#build_and_install">BUILD AND INSTALL
</a></li>
27 <li><a href=
"#requirements">Requirements
</a></li>
28 <li><a href=
"#configure">Configure
</a></li>
29 <li><a href=
"#build">Build
</a></li>
30 <li><a href=
"#install">Install
</a></li>
33 <li><a href=
"#known_problems">KNOWN PROBLEMS
</a></li>
34 <li><a href=
"#contact">CONTACT
</a></li>
41 <h1><a name=
"name">NAME
</a></h1>
42 <p>README.beos - Perl version
5.8+ on BeOS
</p>
46 <h1><a name=
"description">DESCRIPTION
</a></h1>
47 <p>This file contains instructions how to build Perl under BeOS and lists
52 <h1><a name=
"build_and_install">BUILD AND INSTALL
</a></h1>
55 <h2><a name=
"requirements">Requirements
</a></h2>
56 <p>I have built and tested Perl
5.8.6 and
5.9.1 under BeOS R5 x86 net server.
57 I can't say anything with regard to PPC. Since Perl
5.8.0 had been released
58 for BeOS BONE, I suspect, there is a good chance, that it still compiles on
59 a BONE system. The only change I've made, that affects BONE systems is the
60 recognition of whether it is a BONE system or not in
<code>hints/beos.sh
</code>. Now
61 network socket support should remain enabled on BONE systems. This might
62 as well break the build, though.
</p>
63 <p>As more recent versions of autoconf require
<code>flock()
</code> support, I wrote a
<code>flock()
</code>
64 emulation (flock_server) and released it on BeBits:
</p>
66 <a href=
"http://www.bebits.com/app/4030">http://www.bebits.com/app/
4030</a></pre>
67 <p>If you want to build a Perl with
<code>flock()
</code> support, you have to install this
71 <h2><a name=
"configure">Configure
</a></h2>
72 <p>With
<code>flock()
</code> support:
</p>
74 CFLAGS=-I/path/to/flock/server/headers ./configure.gnu \
75 --prefix=/boot/home/config
</pre>
76 <p>Replace
<code>/path/to/flock/server/headers
</code> with the path to the directory
77 containing the
<code>flock.h
</code> header.
</p>
78 <p>Without
<code>flock()
</code> support:
</p>
80 ./configure.gnu --prefix=/boot/home/config
</pre>
83 <h2><a name=
"build">Build
</a></h2>
84 <p>With
<code>flock()
</code> support:
</p>
86 make LDLOADLIBS=
"-lnet -lflock
"</pre>
87 <p>Without
<code>flock()
</code> support:
</p>
89 make LDLOADLIBS=
"-lnet
"</pre>
90 <p><code>-lnet
</code> is needed on net server systems only and if the compiler doesn't
91 add it automatically (Be's R5 gcc does, Oliver Tappe's gcc
2.95.3 does not).
</p>
94 <h2><a name=
"install">Install
</a></h2>
95 <p>Install all perl files:
</p>
98 <p>Create a symlink for libperl:
</p>
100 cd ~/config/lib; ln -s perl5/
5.8.6/BePC-beos/CORE/libperl.so .
</pre>
101 <p>Replace
<code>5.8.6</code> with your respective version of Perl.
</p>
105 <h1><a name=
"known_problems">KNOWN PROBLEMS
</a></h1>
108 <p>Network socket support is disabled for BeOS R5 net server. I didn't dare yet
109 to try enabling it and see what problems occur.
</p>
112 <p>The LFS (large file support) tests (
<code>t/op/lfs
</code> and
<code>xt/Fcntl/t/syslfs
</code>) are
113 disabled as seeking beyond
2 GB is broken according to
<a href=
"mailto:jhi@iki.fi">jhi@iki.fi
</a> who was the
114 last one checking the BeOS port and updating this file before me. Haven't
115 checked this myself.
</p>
118 <p>The
<code>t/io/fflush
</code> test fails at #
6. As far as I can tell, this is caused by
119 a bug in the BeOS pipes implementation that occurs when starting other child
120 processes. In the particular test case a
<a href=
"file://C|\msysgit\mingw\html/pod/perlfunc.html#item_system"><code>system(
"perl -e
0")
</code></a> flushes the
121 stdout pipe of another child process.
</p>
124 <p>The
<code>ext/POSIX/t/waitpid
</code> test fails at #
1. After all child processes are
125 gone BeOS'
<code>waitpid(-
1,...)
</code> returns
0 instead of -
1 (as it should). No idea
132 <h1><a name=
"contact">CONTACT
</a></h1>
133 <p>For BeOS specifics problems feel free to mail to:
134 Ingo Weinhold
<<a href=
"mailto:bonefish@cs.tu-berlin.de">bonefish@cs.tu-berlin.de
</a>></p>
135 <p>Last update:
2004-
12-
16</p>
136 <table border=
"0" width=
"100%" cellspacing=
"0" cellpadding=
"3">
137 <tr><td class=
"block" style=
"background-color: #cccccc" valign=
"middle">
138 <big><strong><span class=
"block"> README.beos - Perl version
5.8+ on BeOS
</span></strong></big>