This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
AUTHORS update.
[perl5.git] / wince / README.perlce
CommitLineData
e4451f11
JH
1NAME
2 PerlCE - perl for Windows CE
3
4DESCRIPTION
5 PerlCE is a simple port of perl to Windows CE. The program
6 is currently linked with a simple console window, so it also
7 works on non-hpc devices.
8
9 The simple stdio implementation creates the files stdin.txt,
10 stdout.txt and stderr.txt, so you might examine them if your
11 console has only a liminted number of cols.
12
13 When exitcode is non-zero, a message box appears, otherwise the
14 console closes, so you might have to catch an exit with
15 status 0 in your program to see any output.
16
17 stdout/stderr now go into the files /perl-stdout.txt and
18 /perl-stderr.txt.
19
20LIMITATIONS
21 No fork(), pipe(), popen() etc.
22
23ENVIRONMENT
24 All environment vars must be stored in HKLM\Environment as
25 strings. They are read at process startup.
26
27 PERL5LIB - Usual perl lib path (semi-list).
28 PATH - Semi-list for executables.
29 TMP - Tempdir.
30 UNIXROOTPATH - Root for accessing some special files,
31 i.e. /dev/null, /etc/services.
32 ROWS/COLS - Rows/cols for console.
33 HOME - Home directory.
34 CONSOLEFONTSIZE - Size for console font.
35
36 You can set these with cereg.exe, a (remote) registry editor
37 or via the PerlIDE.
38
39REGISTRY
40 To start perl by clicking on a perl source file, you have
41 to make the according entries in HKCR (see wince-reg.bat).
42 cereg.exe (which must be executed on a desktop pc with
43 ActiveSync) is reported not to work on some devices.
44 You have to create the registry entries by hand using a
45 registry editor.
46
47FILES
48 $(UNIXROOTPATH)/dev/null - nul simulation, needed for perl -V
49 $(UNIXROOTPATH)/etc/services - services file
50
51 /perl-stdin.txt
52 /perl-stdout.txt
53 /perl-stderr.txt
54
55PERLFILES
56 Only a limited set of perl files is provided in the
57 distribution archiv. You have to copy the original PERL5LIB
58 files from a perl for win32 installation and put the
59 distributed files into the right directories.
60
61 Do not copy any Win32/X86 dlls from your PC to the device...
62
63 The following files are a reasonable minimum if you want to do
64 some socket stuff:
65
66 ./auto
67 ./auto/DynaLoader
68 ./auto/DynaLoader/autosplit.ix
69 ./auto/DynaLoader/dl_expandspec.al
70 ./auto/DynaLoader/dl_findfile.al
71 ./auto/DynaLoader/dl_find_symbol_anywhere.al
72 ./auto/IO
73 ./auto/IO/IO.bs
74 ./auto/IO/IO.dll
75 ./auto/Socket
76 ./auto/Socket/Socket.bs
77 ./auto/Socket/Socket.dll
78 ./Carp
79 ./Carp/Heavy.pm
80 ./Carp.pm
81 ./Config.pm
82 ./DynaLoader.pm
83 ./Exporter
84 ./Exporter/Heavy.pm
85 ./Exporter.pm
86 ./IO
87 ./IO/File.pm
88 ./IO/Handle.pm
89 ./IO/Socket.pm
90 ./IO.pm
91 ./SelectSaver.pm
92 ./Socket.pm
93 ./strict.pm
94 ./Symbol.pm
95 ./warnings
96 ./warnings/register.pm
97 ./warnings.pm
98 ./XSLoader.pm
99
100XS
101 The following Win32-Methods are built-in:
102
103 newXS("Win32::GetCwd", w32_GetCwd, file);
104 newXS("Win32::SetCwd", w32_SetCwd, file);
105 newXS("Win32::GetTickCount", w32_GetTickCount, file);
106 newXS("Win32::GetOSVersion", w32_GetOSVersion, file);
107 newXS("Win32::IsWinNT", w32_IsWinNT, file);
108 newXS("Win32::IsWin95", w32_IsWin95, file);
109 newXS("Win32::IsWinCE", w32_IsWinCE, file);
110 newXS("Win32::CopyFile", w32_CopyFile, file);
111 newXS("Win32::Sleep", w32_Sleep, file);
112 newXS("Win32::MessageBox", w32_MessageBox, file);
113 newXS("Win32::GetPowerStatus", w32_GetPowerStatus, file);
114 newXS("Win32::GetOemInfo", w32_GetOemInfo, file);
115 newXS("Win32::ShellEx", w32_ShellEx, file);
116
117DLLS
118 In the newest version, my celib.dll is needed. Some XS dlls
119 might be needed. Currently, Socket and IO are provided.
120
121BUGS
122 Opening files for read-write is currently not supported if
123 they use stdio (normal perl file handles).
124
125 If you find bugs or if it does not work at all on your
126 device, send mail to the address below. Please report
127 the details of your device (processor, ceversion,
128 devicetype (hpc/palm/pocket)) and the date of the downloaded
129 files.
130
131 I currently have only a Compaq/MIPS HPC, a Jornada/SH3 HPC and
132 a Jornada/ARM HPC, so I can only test on these devices and
133 under the Emulators.
134
135INSTALLATION
136 This is only a suggestion...
137
138 * Unpack the tar archive on your desktop.
139 * Create directories /bin, /lib/perl5, /home, /dev and /etc,
140 possibly on a CF card with the path to the card
141 prepended (i.e. /memcard/bin etc).
142 * Copy perl.exe, perl56.dll and celib.dll from your desktop to
143 /bin. The dlls can also be copied to your /windows
144 directory, but if you use a CF card, you might want to store
145 them there.
146 * Copy the other DLLs to the corresponding auto directory.
147 * Copy any needed perl module-files to /lib/perl5.
148 * Create the registry entries.
149 * If you need tcp service-name resolution, create
150 the file "services" in /etc and put int the entries you need.
151
152 * Under WINCE200, all dlls must be copied to the windows
153 directory.
154
155MISC
156 If you think a certain XS module should be ported, send
157 me mail and explain why.
158
159 If you write useful scripts for perlce, please send me
160 a copy.
161
162TERMINAL
163 There are simple terminal control sequences now. See the
164 readme file that comes with the console program.
165
166AUTHOR
167 Rainer Keuchel <coyxc@rainer-keuchel.de> 2001
168