Platforms that rely on a graphical user interface sometimes lack command lines, so programs requiring a command-line interface might not work everywhere. You can't do much about this, except upgrade.
Some other tips:
Some platforms can't delete or rename files that
are in use, so remember to close
files when you
are done with them. Don't unlink
or
rename
an open file. Don't
tie
or open
a file already
tied or opened; untie
or
close
it first.
Don't open the same file more than once at a time for writing, since some operating systems put mandatory locks on such files.
Don't depend on a specific environment variable
existing in %ENV
, and don't assume that
anything in %ENV
will be case sensitive or case
preserving. Don't assume Unix inheritance semantics for
environment variables; on some systems, they may
be visible to all other processes.
Try to avoid filename globbing. Use
opendir
, readdir
, and
closedir
instead. (As of release 5.6.0 of Perl,
basic filename globbing is much more portable than it was, but
some systems may still chafe under the Unixisms of the default
interface if you try to get fancy.)
Don't assume specific values of the error numbers
or strings stored in $!
.