Penguin
Annotated edit history of perlepoc(1) version 2, including all changes. View license author blame.
Rev Author # Line
1 perry 1 PERLEPOC
2 !!!PERLEPOC
3 NAME
4 SYNOPSIS
5 INTRODUCTION
6 INSTALLING PERL ON EPOC
7 STARTING PERL ON EPOC
8 STOPPING PERL ON EPOC
9 USING PERL ON EPOC
10 SUPPORT STATUS
11 AUTHOR
12 LAST UPDATE
13 ----
14 !!NAME
15
16
17 README .epoc - Perl for EPOC
18 !!SYNOPSIS
19
20
21 Perl 5 README file for the EPOC
22 operating system.
23 !!INTRODUCTION
24
25
26 EPOC is a OS for palmtops and mobile phones.
27 For more informations look at:
28 http://www.symbian.com/
29
30
31 This is a port of perl to EPOC . It runs
32 on ER5 machines: Psion 5mx, 5mx Pro, Psion Revo
33 and on the Ericson M128. I have no report about the Psion
34 Netbook or the S7. It runs on ER3 Hardware
35 (Series 5 classic), too. For more information about this
36 hardware please refer to
37 http://www.psion.com.
38
39
40 Vendors which like to have support for their devices
41 are free to send me a sample.
42 !!INSTALLING PERL ON EPOC
43
44
45 You can download a ready-to-install version from
46 http://www.science-computing.de/o.flebbe/perl. You may find
47 other versions with some CPAN modules included at
48 this location.
49
50
51 You will need at least 4MB free space in order to
52 install and run perl.
53
54
55 Install perl.sis on the EPOC machine. If you
2 perry 56 do not know how to do that, consult your !PsiWin
1 perry 57 documentation.
58
59
60 Perl itself and its standard library is using 2.9
61 MB disk space. Unicode support and some other modules
62 are left out. (For details, please look into
63 epoc/createpkg.pl). If you like to use these modules, you
64 are free to copy them from a current perl
65 release.
66 !!STARTING PERL ON EPOC
67
68
69 For ER5 machines, you can get the software
70 Perlstart http://www.science-computing.de/o.flebbe/perl. It
71 contains file recognizers for files with the extension .pl
72 and .pm. With it you can start perl with a double click on
73 the camel icon. Be sure to configure the perl installation
74 drive first. You can even provide a script with a special
75 commandline, if needed.
76
77
78 Alternativly you can get ESHELL from
79 symbian:
80 http://developer.epocworld.com/downloads/progs/Eshell.zip
81
82
83 Running ESHELL you can enter: perl -de 0 in
84 order to run the perl debugger. If you are leaving perl, you
85 get into the system screen. You have to switch back manually
86 to ESHELL . When perl is running, you will see a
87 task with the name STDOUT in the task
88 list.
89
90
91 If you have a ER3 machine (i.e. a
92 PSION 5), you may have to supply the full path to the
93 perl executable C:systemprogramsperl.exe.
94
95
96 If you need to set the current directory of perl,
97 please use the command line switch '-x'. See perlrun for
98 details.
99 !!STOPPING PERL ON EPOC
100
101
102 You can stop a running perl process in the task list by
103 closing the application ` STDOUT '. You cannot
104 stop a running perl process if it has not written anyting to
105 stdout or stderr! Be very cautious with I/O redirection. You
106 will have to reboot the PDA !
107 !!USING PERL ON EPOC
108
109
110 __I/O Redirection__
111
112
113 You can redirect the output with the UNIX
114 bourne shell syntax (this is built into perl rather
115 then eshell) For instance the following command line will
116 run the script test.pl with the output redirected to
117 stdout_file, the errors to stderr_file and input from
118 stdin_file.
119
120
121 perl test.pl
122
123
124 Alternatively you can use 2
125
126
127 __PATH Names__
128
129
130 ESHELL looks for executables in ?:/System/Programs.
131 The SIS file installs perl in this special folder
132 directory. The default drive and path are the same as folder
133 the executable resides. The EPOC filesystem is
134 case-preserving, not case-sensitive.
135
136
137 The EPOC estdlib uses the ?: syntax for
138 establishing a search order: First in C: ( RAM ),
139 then on D: ( CF Card, if present) and last in Z:
140 ( ROM ). For instance ?:a.txt searches for
141 C:a.txt, D:a.txt (and Z:a.txt)
142
143
144 The perl @INC search path is implemented with
145 '?:'. Your perl executable can live on a different drive
146 than the perl library or even your
147 scripts.
148
149
150 ESHELL paths have to be written with backslashes '',
151 file arguments to perl with slashes '/'. Remember that I/O
152 redirection is done internally in perl, so please use
153 slashes for redirects.
154
155
156 perl.exe C:/test.pl
157
158
159 __Editors__
160
161
162 A suitable text editor can be downloaded from symbian
163 http://developer.epocworld.com/downloads/progs/Editor.zip
164
165
166 __Features__
167
168
169 The built-in function EPOC::getcwd returns the current
170 directory.
171
172
173 __Restrictions__
174
175
176 Features are left out, because of restrictions of
177 the POSIX support in EPOC:
178
179
180 backquoting, pipes etc.
181
182
183 ''system()'' does not inherit ressources like: file
184 descriptors, environment etc.
185
186
187 signal, kill, alarm. Do not try to use them. This may
188 be impossible to implement on EPOC
189 .
190
191
192 select is missing.
193
194
195 binmode does not exist. (No CR LF to
196 LF translation for text files)
197
198
199 EPOC does not handle the notion of current drive and
200 current directory very well (i.e. not at all, but it tries
201 hard to emulate one) See PATH
202 .
203
204
205 Heap is limited to 4MB.
206
207
208 Dynamic loading is not implemented.
209
210
211 __Compiling Perl 5 on the__ __EPOC cross
212 compiling environment__
213
214
215 Sorry, this is far too short.
216
217
218 You will need the C ++ SDK from
219 http://developer.epocworld.com/.
220
221
222 You will need to set up the cross SDK from
223 http://www.science-computing.de/o.flebbe/sdk
224
225
226 You may have to adjust config.sh (cc, cppflags) to
227 reflect your epoc and SDK
228 location.
229
230
231 Get the Perl sources from your nearest CPAN
232 site.
233
234
235 Unpack the sources.
236
237
238 Build a native perl from this sources... Make sure to
239 save the miniperl executable as
240 miniperl.native.
241
242
243 Start again from scratch
244
245
246 cp epoc/* .
247 ./Configure -S
248 make
249 cp miniperl.native miniperl
250 make
251 make ext/Errno/pm_to_blib
2 perry 252 perl link.pl perlmain.o lib/auto/!DynaLoader/!DynaLoader.a \
1 perry 253 lib/auto/Data/Dumper/Dumper.a \
254 lib/auto/File/Glob/Glob.a lib/auto/IO/IO.a \
255 lib/auto/Socket/Socket.a \
256 lib/auto/Fcntl/Fcntl.a lib/auto/Sys/Hostname/Hostname.a \
257 perl.a `cat ext.libs`
258 perl createpkg.pl
259 wine G:/bin/makesis perl.pkg perl.sis
260 !!SUPPORT STATUS
261
262
263 I'm offering this port ``as is''. You can ask me
264 questions, but I can't guarantee I'll be able to answer
265 them.
266 !!AUTHOR
267
268
269 Olaf Flebbe
270 !!LAST UPDATE
271
272
273 2001-02-26
274 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.