Commit | Line | Data |
---|---|---|
a83b6f46 JH |
1 | If you read this file _as_is_, just ignore the funny characters you see. |
2 | It is written in the POD format (see pod/perlpod.pod) which is specially | |
3 | designed to be readable as is. | |
c4f23d77 | 4 | |
a83b6f46 JH |
5 | =head1 NAME |
6 | ||
7 | README.beos - Perl version 5 on BeOS | |
8 | ||
9 | =head1 DESCRIPTION | |
10 | ||
11 | Notes for building Perl under BeOS. | |
12 | ||
13 | =head2 General Issues with Perl on BeOS | |
c4f23d77 | 14 | |
46193409 | 15 | To compile perl under BeOS R4 x86: |
c4f23d77 | 16 | |
a83b6f46 | 17 | ./Configure -d |
c4f23d77 | 18 | |
a83b6f46 | 19 | and hit ^C when it asks you if you want to make changes to config.sh; |
46193409 JH |
20 | edit config.sh and do the following: |
21 | change d_socket='define' to ='undef'; | |
22 | remove SDBM, Errno, and Socket from dynamic_ext= and nonxs_ext=; | |
46193409 | 23 | add '#define bool short' to x2p/a2p.h; |
c4f23d77 | 24 | |
a83b6f46 JH |
25 | ../Configure -S; make; make install |
26 | ||
27 | cd ~/config/lib; ln -s 5.00502/BeOS-BePC/CORE/libperl.so . | |
c4f23d77 | 28 | |
46193409 | 29 | (substitute 5.00502 with the appropriate filename) |
c4f23d77 | 30 | |
a83b6f46 JH |
31 | =head2 BeOS Release-specific Notes |
32 | ||
33 | =over 4 | |
34 | ||
35 | =item R4 x86 | |
36 | ||
37 | Dynamic loading finally works! Yay! This means you can compile your | |
38 | own modules into perl. However, Sockets and Errno still don't work. | |
46193409 | 39 | (Hopefully, sockets will at least work by R5, if not sooner.) |
c4f23d77 | 40 | |
a83b6f46 JH |
41 | =item R4 PPC |
42 | ||
43 | I have not tested this. I rather severely doubt that dynamic loading | |
44 | will work. (My BeBox is in pieces right now, following a nasty disk | |
45 | crash.) You may have to disable dynamic loading to get the thing to | |
46 | compile at all. (use `./Configure` without -d, and say 'no' to 'Build | |
47 | a shared libperl.so'.) | |
48 | ||
49 | =back | |
50 | ||
51 | =head2 Contact Information | |
c4f23d77 | 52 | |
c4f23d77 AD |
53 | If you have comments, problem reports, or even patches or bugfixes (gasp!) |
54 | please email me. | |
55 | ||
46193409 | 56 | 28 Jan 1999 |
c4f23d77 | 57 | Tom Spindler |
46193409 | 58 | dogcow@isi.net |
c4f23d77 | 59 | |
dff18f87 JH |
60 | =head2 Update 2001-12-26 |
61 | ||
62 | I managed to compile one of the developer snapshots (13885 plus a few | |
63 | tweaks) leading up to (some day) Perl 5.8.0, and the following tests | |
64 | fail: | |
65 | ||
66 | op/magic 24-26 | |
67 | ext/POSIX/t/sigaction 13 | |
68 | ext/POSIX/t/waitpid 1 | |
69 | lib/ExtUtils/t/Installed 9-10 25-27 29-30 33-36 | |
70 | ||
71 | None of the failures look too serious: | |
72 | ||
73 | =over 4 | |
74 | ||
75 | =item * | |
76 | ||
77 | The op/magic failures look like something funny going on with $0 and | |
78 | $^X that I can't now figure out: none of the generated pathnames are | |
79 | wrong as such, they just seem to accumulate "./" prefixes and infixes | |
80 | in ways that define logic. | |
81 | ||
82 | =item * | |
83 | ||
84 | The sigaction #13 means that signal mask doesn't get properly restored | |
85 | if sigaction returns early. | |
86 | ||
87 | =item * | |
88 | ||
89 | The waitpid failure means that after there are no more child | |
90 | processes, waitpid is supposed to start returning -1 (and set errno | |
91 | to ECHILD). In BeOS, it doesn't seem to. | |
92 | ||
93 | =item * | |
94 | ||
95 | The Installed test has some filesystem portability assumptions. | |
96 | ||
97 | =back | |
98 | ||
99 | Disclaimer: I just installed BeOS Personal Edition 5.0 and the | |
100 | Developer Tools, that is the whole extent of my BeOS expertise, | |
101 | so pelase don't ask for further help in BeOS Perl problems, sorry. | |
102 | ||
103 | jhi@iki.fi |