http://www.bixby.org/mark/perlix.html
Perl language for MPE
- Last updated June 2, 2000 @ 0400 UTC
+ Last updated January 12, 2006 @ 2100 UTC
+
=head1 NOTE
-This is a podified version of the above-mentioned web page,
+This is a podified version of what used to be on the above-mentioned web page,
podified by Jarkko Hietaniemi 2001-Jan-01.
-=head1 What's New
+=head1 What's New in Perl for MPE/iX
+
+January 12, 2006
+
+=over 4
+
+=item *
+
+Updated for perl-5.8.8 and perl-5.9.3 by Ken Hirsch.
+
+Simplified the build process by using the MPEAUTOCONF
+functionality in Mark Klein's ld.
+
+If you build this from scratch, make sure you have a version
+of ld which supports it. In the shell, type
+
+ ld --help
+ and look for AUTOCONF or MPEAUTOCONF near the bottom
+
+ or do this:
+ ld --help 2>&1 | grep AUTOCONF
+
+If you see don't see AUTOCONF or MPEAUTOCONF, make sure you get a new
+version.
+
+You also do not have to use mpeix/relink after building, so the
+recommend sequence is:
+
+ ./Configure -de
+
+ # or ./Configure -de -Dusedevel
+ # if you're building a development version
+
+ make
+ make test
+ # if you run this in a job, do "make test_notty"
+
+ make install
+
+Be prepared for a wait. These take much longer on MPE/iX than on a Unix
+system, because of a slow forking, mostly. On a lightly-loaded HP3000
+Series 979 running MPE/iX 7.5:
+
+ Configure: 1 hour
+ make: 1 hour 15 minutes
+ make test 1 hour 45 minutes
+
+Various socket problems were fixed in mpeix.c.
+
+Mark Klein provided a fixed sigsetjmp (that works with dynamic
+libraries) in mpeix_setjmp.c
+
+=back
June 1, 2000
=item *
-bincompat5005="undef": sorry, but you will have to recompile any
-binary 5.005 extensions that you may be using (if any; there is no
-5.005 code in what you download from bixby.org)
uselargefiles="undef": not available in MPE for POSIX files yet.
=item *
=item *
-libnet (http://www.gbarr.demon.co.uk/libnet/FAQ.html)
+libnet (as seen on CPAN)
=item *
libwww-perl (LWP) which lets Perl programs behave like web browsers:
- 1. #!/PERL/PUB/perl
- 2. use LWP::Simple;
- 3. $doc = get('http://www.bixby.org/mark/perlix.html'); # reads the
- web page into variable $doc
-
-(http://www.bixby.org/mark/perlix.html)
-
=item *
mod_perl (just the perl portion; the actual DSO will be released
2. perl -MCPAN -e shell
3. Ignore any terminal I/O related complaints!
-(http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html)
+(http://search.cpan.org/dist/CPAN/)
=back
=back
-=head1 Welcome
+=head1 Welcome to Perl/iX
This is the official home page for the HP e3000 MPE/iX
-(http://www.businessservers.hp.com/) port of the Perl scripting
-language (http://www.perl.com/) which gives you all of the power of C,
+( http://www.hp.com/go/e3000 ) port of the Perl scripting
+language ( http://www.perl.com/ ) which gives you all of the power of C,
awk, sed, and sh in a single language. Check here for the latest news,
implemented functionality, known bugs, to-do list, etc. Status reports
about major milestones will also be posted to the HP3000-L mailing list
-(http://www.lsoft.com/scripts/wl.exe?SL1=HP3000-L&H=RAVEN.UTC.EDU) and
+( http://www.lsoft.com/scripts/wl.exe?SL1=HP3000-L&H=RAVEN.UTC.EDU ) and
its associated gatewayed newsgroup comp.sys.hp.mpe.
I'm doing this port because I can't live without Perl on the Unix
available to me on MPE.
Please send your comments, questions, and bug reports directly to me,
-Mark Bixby (http://www.bixby.org/mark/), by e-mailing to
-mark@bixby.org. Or just post them to HP3000-L.
+Mark Bixby ( http://www.bixby.org/mark/ ). Or just post them to HP3000-L.
The platform I'm using to do this port is an HP 3000 957RX running
MPE/iX 6.0 and using the GNU gcc C compiler
-(http://jazz.external.hp.com/src/gnu/gnuframe.html).
+( http://jazz.external.hp.com/src/gnu/gnuframe.html ).
The combined porting wisdom from all of my ports can be found in my
MPE/iX Porting Guide (http://www.bixby.org/mark/porting.html).
the software you download from bixby.org is my personal freeware that
is NOT supported by HP.
-=head1 System Requirements
+=head1 System Requirements for Perl/iX
=over 4
=item *
If you will be compiling Perl/iX yourself, you will also need
-Syslog/iX (http://www.bixby.org/mark/syslogix.html) and the
+Syslog/iX ( http://www.bixby.org/mark/syslogix.html ) and the
/BIND/PUB/include and /BIND/PUB/lib portions of BIND/iX
-(http://www.bixby.org/mark/bindix.html).
+( http://www.bixby.org/mark/bindix.html ).
=back
=back
-=head1 Distribution Contents Highlights
+=head1 Perl/iX Distribution Contents Highlights
=over 4
make sure that your script has execute permission. Run your script!
Be sure to take a look at the CPAN module list
-(http://www.cpan.org/CPAN.html). A wide variety of free Perl software
+( http://www.cpan.org/CPAN.html ). A wide variety of free Perl software
is available. You can automatically download these packages by using
-the CPAN module (http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html).
+the CPAN module ( http://search.cpan.org/dist/CPAN/ ).
=head1 MPE/iX Implementation Considerations
=item *
-If you use Perl/iX fcntl() against a socket it will fail, because MPE
-requires that you use sfcntl() instead. Perl/iX does not presently
-support sfcntl().
-
-=item *
-
MPE requires GETPRIVMODE() in order to setuid(). There are too many
calls to setuid() within Perl/iX, so I have not attempted an automatic
GETPRIVMODE() solution similar to bind().
=back
-=head1 Known Bugs Under Investigation
+=head1 Known Perl/iX Bugs Under Investigation
None.
-=head1 To-Do List
+=head1 Perl/iX To-Do List
=over 4
=back
-=head1 Change History
+=head1 Perl/iX Change History
May 6, 1999
=back
-=head1 Author
+=head1 AUTHOR
-Mark Bixby, mark@bixby.org
+Mark Bixby, http://www.bixby.org/mark/