Commit | Line | Data |
---|---|---|
9a997319 JH |
1 | If you read this file _as_is_, just ignore the funny characters you |
2 | see. It is written in the POD format (see pod/perlpod.pod) which is | |
3 | specially designed to be readable as is. | |
4d2c4e07 | 4 | |
9a997319 JH |
5 | =head1 NAME |
6 | ||
7 | README.epoc - Perl for EPOC | |
4d2c4e07 | 8 | |
9a997319 JH |
9 | =head1 SYNOPSIS |
10 | ||
2585f9a3 | 11 | Perl 5 README file for the EPOC Release 5 operating system. |
9a997319 JH |
12 | |
13 | =head1 INTRODUCTION | |
4d2c4e07 | 14 | |
d1be9408 | 15 | EPOC is an OS for palmtops and mobile phones. For more informations look at: |
3a2f06e9 | 16 | http://www.symbian.com/ |
4d2c4e07 | 17 | |
2585f9a3 | 18 | This is a port of perl to the epocemx SDK by Eberhard Mattes, which |
3a1825b5 | 19 | itself uses the SDK by symbian. Essentially epocemx it is a POSIX |
2585f9a3 JH |
20 | look alike environment for the EPOC OS. For more informations look at: |
21 | http://www.windhager.de/~mattes/epocemx/ | |
22 | ||
23 | perl and epocemx runs on Epoc Release 5 machines: Psion 5mx, 5mx Pro, | |
24 | Psion Revo, Psion Netbook and on the Ericson M128. It may run on Epoc | |
25 | Release 3 Hardware (Series 5 classic), too. For more information about | |
1577cd80 | 26 | this hardware please refer to http://www.psion.com/ |
d5ff79b3 OF |
27 | |
28 | Vendors which like to have support for their devices are free to send | |
29 | me a sample. | |
4d2c4e07 | 30 | |
9a997319 | 31 | =head1 INSTALLING PERL ON EPOC |
4d2c4e07 | 32 | |
d5ff79b3 | 33 | You can download a ready-to-install version from |
1577cd80 | 34 | http://www.science-computing.de/o.flebbe/perl/ |
d5ff79b3 | 35 | |
2585f9a3 | 36 | You will need at least ~6MB free space in order to install and run |
d5ff79b3 OF |
37 | perl. |
38 | ||
2585f9a3 JH |
39 | Please install the emxusr.sis package from |
40 | http://www.windhager.de/~mattes/epocemx/ first. | |
41 | ||
d5ff79b3 OF |
42 | Install perl.sis on the EPOC machine. If you do not know how to do |
43 | that, consult your PsiWin documentation. | |
44 | ||
2585f9a3 | 45 | Perl itself and its standard library is using 4 MB disk space. |
d5ff79b3 OF |
46 | Unicode support and some other modules are left out. (For details, |
47 | please look into epoc/createpkg.pl). If you like to use these modules, | |
48 | you are free to copy them from a current perl release. | |
ae2d1787 | 49 | |
d5ff79b3 | 50 | =head1 STARTING PERL ON EPOC |
ae2d1787 | 51 | |
2585f9a3 JH |
52 | Please use the epocemx shell to start perl. perl integrates with the |
53 | conventions of epocemx. | |
4d2c4e07 | 54 | |
a83b6f46 | 55 | =head2 Editors on Epoc |
4d2c4e07 | 56 | |
d5ff79b3 | 57 | A suitable text editor can be downloaded from symbian |
02a99678 | 58 | http://www.symbian.com/developer/downloads/files/editor.zip |
ed79a026 | 59 | |
a83b6f46 | 60 | =head2 Features of Perl on Epoc |
4d2c4e07 | 61 | |
ed79a026 | 62 | The built-in function EPOC::getcwd returns the current directory. |
3a2f06e9 | 63 | |
a83b6f46 | 64 | =head2 Restrictions of Perl on Epoc |
4d2c4e07 | 65 | |
ed79a026 OF |
66 | Features are left out, because of restrictions of the POSIX support in |
67 | EPOC: | |
4d2c4e07 | 68 | |
9a997319 JH |
69 | =over 4 |
70 | ||
eccd403f JH |
71 | =item * |
72 | ||
73 | socket IO is only implemented poorly. You can only use sysread and | |
74 | syswrite on them. The commands read, write, print, <> do not work for | |
75 | sockets. This may change iff epocemx supports sockets. | |
76 | ||
9a997319 JH |
77 | =item * |
78 | ||
2585f9a3 | 79 | kill, alarm and signals. Do not try to use them. This may be |
9a997319 JH |
80 | impossible to implement on EPOC. |
81 | ||
82 | =item * | |
83 | ||
84 | select is missing. | |
85 | ||
86 | =item * | |
ae2d1787 | 87 | |
9a997319 | 88 | binmode does not exist. (No CR LF to LF translation for text files) |
ae2d1787 | 89 | |
9a997319 | 90 | =item * |
ae2d1787 | 91 | |
9a997319 JH |
92 | EPOC does not handle the notion of current drive and current |
93 | directory very well (i.e. not at all, but it tries hard to emulate | |
3a1825b5 | 94 | one). See PATH. |
ae2d1787 | 95 | |
9a997319 | 96 | =item * |
ae2d1787 | 97 | |
d5ff79b3 | 98 | Heap is limited to 4MB. |
4d2c4e07 | 99 | |
9a997319 | 100 | =item * |
4d2c4e07 | 101 | |
d5ff79b3 | 102 | Dynamic loading is not implemented. |
4d2c4e07 | 103 | |
9a997319 JH |
104 | =back |
105 | ||
106 | =head2 Compiling Perl 5 on the EPOC cross compiling environment | |
4d2c4e07 | 107 | |
3a2f06e9 | 108 | Sorry, this is far too short. |
4d2c4e07 | 109 | |
9a997319 JH |
110 | =over 4 |
111 | ||
112 | =item * | |
113 | ||
2585f9a3 | 114 | You will need the epocemx SDK from Eberhard Mattes. |
4d2c4e07 | 115 | |
9a997319 | 116 | =item * |
4d2c4e07 | 117 | |
9a997319 | 118 | Get the Perl sources from your nearest CPAN site. |
4d2c4e07 | 119 | |
9a997319 | 120 | =item * |
4d2c4e07 | 121 | |
9a997319 | 122 | Unpack the sources. |
ae2d1787 | 123 | |
9a997319 | 124 | =item * |
ae2d1787 | 125 | |
d5ff79b3 OF |
126 | Build a native perl from this sources... Make sure to save the |
127 | miniperl executable as miniperl.native. | |
128 | ||
129 | Start again from scratch | |
ed79a026 | 130 | |
3a2f06e9 | 131 | cp epoc/* . |
f83d2536 | 132 | ./Configure -S |
d5ff79b3 | 133 | make |
3a2f06e9 | 134 | cp miniperl.native miniperl |
2585f9a3 | 135 | touch miniperl.exe |
d5ff79b3 | 136 | make |
3a2f06e9 | 137 | perl createpkg.pl |
4d2c4e07 | 138 | |
02a99678 | 139 | emxsis perl.pkg perl.sis |
4d2c4e07 | 140 | |
9a997319 | 141 | =back |
4d2c4e07 | 142 | |
a83b6f46 | 143 | =head1 SUPPORT STATUS OF PERL ON EPOC |
4d2c4e07 | 144 | |
ed79a026 | 145 | I'm offering this port "as is". You can ask me questions, but I can't |
2585f9a3 JH |
146 | guarantee I'll be able to answer them. Since the port to epocemx is |
147 | quite new, please check the web for updates first. | |
148 | ||
149 | Very special thanks to Eberhard Mattes for epocemx. | |
9a997319 JH |
150 | |
151 | =head1 AUTHOR | |
152 | ||
d5ff79b3 OF |
153 | Olaf Flebbe <o.flebbe@science-computing.de> |
154 | http://www.science-computing.de/o.flebbe/perl/ | |
9a997319 JH |
155 | |
156 | =head1 LAST UPDATE | |
157 | ||
2585f9a3 | 158 | 2002-03-26 |
9a997319 JH |
159 | |
160 | =cut |