---
name: "perlepoc"
section: "1"
platform: "linux"
package: "perl-doc"
version: "5.14.2-21+deb7u3"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/perlepoc"
---

# perlepoc(1)

Perl for EPOC

## NAME

README.epoc - Perl for EPOC

## SYNOPSIS

Perl 5 README file for the EPOC Release 5 operating system.

## INTRODUCTION

EPOC is an OS for palmtops and mobile phones. For more information look at: \<http://www.symbian.com/\>

This is a port of perl to the epocemx SDK by Eberhard Mattes, which itself uses the SDK by symbian. Essentially epocemx it is a POSIX look alike environment for the EPOC OS.  For more information look at:  \<http://epocemx.sourceforge.net/\>

perl and epocemx runs on Epoc Release 5 machines: Psion 5mx, 5mx Pro, Psion Revo, Psion Netbook and on the Ericsson M128. It may run on Epoc Release 3 Hardware (Series 5 classic), too. For more information about this hardware please refer to \<http://www.psion.com/\>

Vendors which like to have support for their devices are free to send me a sample.

## INSTALLING PERL ON EPOC

You can download a ready-to-install version from \<http://www.oflebbe.de/perl/perl5.html\>

You will need at least ~6MB free space in order to install and run perl.

Please install the emxusr.sis package from \<http://epocemx.sourceforge.net/\> first.

Install perl.sis on the EPOC machine. If you do not know how to do that, consult your PsiWin documentation.

Perl itself and its standard library is using 4 MB disk space. Unicode support and some other modules are left out. (For details, please look into epoc/createpkg.pl). If you like to use these modules, you are free to copy them from a current perl release.

## STARTING PERL ON EPOC

Please use the epocemx shell to start perl. perl integrates with the conventions of epocemx.

### Features of Perl on Epoc

The built-in function EPOC::getcwd returns the current directory.

### Restrictions of Perl on Epoc

Features are left out, because of restrictions of the POSIX support in EPOC:

- •

  socket IO is only implemented poorly. You can only use sysread and syswrite on them. The commands read, write, print, \<\> do not work for sockets. This may change iff epocemx supports sockets.

- •

  kill, alarm and signals. Do not try to use them. This may be impossible to implement on EPOC.

- •

  select is missing.

- •

  binmode does not exist. (No CR LF to LF translation for text files)

- •

  EPOC does not handle the notion of current drive and current directory very well (i.e. not at all, but it tries hard to emulate one). See PATH.

- •

  Heap is limited to 4MB.

- •

  Dynamic loading is not implemented.

### Compiling Perl 5 on the EPOC cross compiling environment

Sorry, this is far too short.

- •

  You will need the epocemx SDK from Eberhard Mattes.

- •

  Get the Perl sources from your nearest CPAN site.

- •

  Unpack the sources.

- •

  Build a native perl from this sources... Make sure to save the miniperl executable as miniperl.native.

  Start again from scratch

  ```
        cp epoc/* .
        ./Configure -S
        make
        cp miniperl.native miniperl
        touch miniperl.exe
        make
        perl createpkg.pl
        emxsis perl.pkg perl.sis
  ```

## SUPPORT STATUS OF PERL ON EPOC

I'm offering this port "as is". You can ask me questions, but I can't guarantee I'll be able to answer them. Since the port to epocemx is quite new, please check the web for updates first.

Very special thanks to Eberhard Mattes for epocemx.

## AUTHOR

Olaf Flebbe \<olaf@oflebbe.de\> \<http://www.oflebbe.de/perl/perl5.html\>

## LAST UPDATE

2003-01-18
