perlmpeix.html

来自「perl教程」· HTML 代码 · 共 650 行 · 第 1/2 页

HTML
650
字号
<?xml version="1.0" ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<!-- saved from url=(0017)http://localhost/ -->
<script language="JavaScript" src="../../displayToc.js"></script>
<script language="JavaScript" src="../../tocParas.js"></script>
<script language="JavaScript" src="../../tocTab.js"></script>
<link rel="stylesheet" type="text/css" href="../../scineplex.css">
<title>README.mpeix - Perl/iX for HP e3000 MPE</title>
<link rel="stylesheet" href="../../Active.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:" />
</head>

<body>

<script>writelinks('__top__',2);</script>
<h1><a>README.mpeix - Perl/iX for HP e3000 MPE</a></h1>
<p><a name="__index__"></a></p>

<!-- INDEX BEGIN -->

<ul>

	<li><a href="#name">NAME</a></li>
	<li><a href="#synopsis">SYNOPSIS</a></li>
	<li><a href="#note">NOTE</a></li>
	<li><a href="#binary_distribution_from_hp">Binary distribution from HP</a></li>
	<li><a href="#what_s_new_in_perl_for_mpe_ix">What's New in Perl for MPE/iX</a></li>
	<li><a href="#welcome_to_perl_ix">Welcome to Perl/iX</a></li>
	<li><a href="#system_requirements_for_perl_ix">System Requirements for Perl/iX</a></li>
	<li><a href="#how_to_obtain_perl_ix">How to Obtain Perl/iX</a></li>
	<li><a href="#perl_ix_distribution_contents_highlights">Perl/iX Distribution Contents Highlights</a></li>
	<li><a href="#how_to_compile_perl_ix">How to Compile Perl/iX</a></li>
	<li><a href="#getting_started_with_perl_ix">Getting Started with Perl/iX</a></li>
	<li><a href="#mpe_ix_implementation_considerations">MPE/iX Implementation Considerations</a></li>
	<li><a href="#known_perl_ix_bugs_under_investigation">Known Perl/iX Bugs Under Investigation</a></li>
	<li><a href="#perl_ix_todo_list">Perl/iX To-Do List</a></li>
	<li><a href="#perl_ix_change_history">Perl/iX Change History</a></li>
	<li><a href="#author">AUTHOR</a></li>
</ul>
<!-- INDEX END -->

<hr />
<p>
</p>
<h1><a name="name">NAME</a></h1>
<p>README.mpeix - Perl/iX for HP e3000 MPE</p>
<p>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<pre>
   <a href="http://www.bixby.org/mark/perlix.html">http://www.bixby.org/mark/perlix.html</a>
   <a href="http://jazz.external.hp.com/src/hp_freeware/perl/">http://jazz.external.hp.com/src/hp_freeware/perl/</a>
   Perl language for MPE
   Last updated January 12, 2006 @ 2100 UTC</pre>
<p>
</p>
<hr />
<h1><a name="note">NOTE</a></h1>
<p>This is a podified version of the above-mentioned web page,
podified by Jarkko Hietaniemi 2001-Jan-01.</p>
<p>
</p>
<hr />
<h1><a name="binary_distribution_from_hp">Binary distribution from HP</a></h1>
<p>The simplest way to obtain Perl for the MPE/iX is to go either of
these URLs and follow the instructions within.</p>
<p><a href="http://jazz.external.hp.com/src/hp_freeware/perl/">http://jazz.external.hp.com/src/hp_freeware/perl/</a>
<a href="http://www.bixby.org/mark/perlix.html">http://www.bixby.org/mark/perlix.html</a></p>
<p>Use which ever one is more recent.</p>
<p>
</p>
<hr />
<h1><a name="what_s_new_in_perl_for_mpe_ix">What's New in Perl for MPE/iX</a></h1>
<p>January 12, 2006</p>
<ul>
<li>
<p>Updated for perl-5.8.8 and perl-5.9.3 by Ken Hirsch.</p>
<p>Simplified the build process by using the MPEAUTOCONF
functionality in Mark Klein's ld.</p>
<p>If you build this from scratch, make sure you have a version
of ld which supports it.  In the shell, type</p>
<pre>
  ld --help
    and look for AUTOCONF or MPEAUTOCONF near the bottom</pre>
<pre>
  or do this:
  ld --help 2&gt;&amp;1 | grep AUTOCONF</pre>
<p>If you see don't see AUTOCONF or MPEAUTOCONF, make sure you get a new
version.</p>
<p>You also do not have to use mpeix/relink after building, so the
recommend sequence is:</p>
<pre>
  ./Configure -de</pre>
<pre>
      <span class="comment"># or ./Configure -de -Dusedevel </span>
      <span class="comment"># if you're building a development version</span>
</pre>
<pre>
  make
  make test
     # if you run this in a job, do &quot;make test_notty&quot;</pre>
<pre>
  make install</pre>
<p>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:</p>
<pre>
    Configure: 1 hour
    make:      1 hour 15 minutes
    make test  1 hour 45 minutes</pre>
<p>Various socket problems were fixed in mpeix.c.</p>
<p>Mark Klein provided a fixed sigsetjmp (that works with dynamic
libraries) in mpeix_setjmp.c</p>
</li>
<li>
<p>June 1, 2000</p>
<ul>
<li>
<p>Rebuilt to be compatible with mod_perl.  If you plan on using
mod_perl, you MUST download and install this version of Perl/iX!</p>
</li>
<li>
<p>uselargefiles=&quot;undef&quot;: not available in MPE for POSIX files yet.</p>
</li>
<li>
<p>Now bundled with various add-on packages:</p>
<ul>
<li>
<p>libnet (as seen on CPAN)</p>
</li>
<li>
<p>libwww-perl (LWP) which lets Perl programs behave like web browsers:</p>
<pre>
    <span class="number">1.</span> <span class="comment">#!/PERL/PUB/perl</span>
    <span class="number">2.</span> <span class="keyword">use</span> <span class="variable">LWP::Simple</span><span class="operator">;</span>
    <span class="number">3.</span> <span class="variable">$doc</span> <span class="operator">=</span> <span class="variable">get</span><span class="operator">(</span><span class="string">'http://www.bixby.org/mark/perlix.html'</span><span class="operator">);</span>  <span class="comment"># reads the</span>
       <span class="variable">web</span> <span class="variable">page</span> <span class="variable">into</span> <span class="variable">variable</span> <span class="variable">$doc</span>
</pre>
<p>(http://www.bixby.org/mark/perlix.html)</p>
</li>
<li>
<p>mod_perl (just the perl portion; the actual DSO will be released
soon with Apache/iX 1.3.12 from bixby.org).  This module allows you to
write high performance persistent Perl CGI scripts and all sorts of
cool things. (http://perl.apache.org/)</p>
<p>and much much more hiding under /PERL/PUB/.cpan/</p>
</li>
<li>
<p>The CPAN module now works for automatic downloading and
installing of add-on packages:</p>
<pre>
    1. export FTP_PASSIVE=1
    2. perl -MCPAN -e shell
    3. Ignore any terminal I/O related complaints!</pre>
<p>(http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html)</p>
</li>
</ul>
</ul>
<p>May 20, 2000</p>
<ul>
<li>
<p>Updated to version 5.6.0.  Builds straight out of the box on MPE/iX.</p>
</li>
<li>
<p>Perl's <a href="../../lib/Pod/perlfunc.html#item_getpwnam"><code>getpwnam()</code></a> function which had regressed to being
unimplemented on MPE is now implemented once again.</p>
</li>
</ul>
<p>September 17, 1999</p>
<ul>
<li>
<p>Migrated from cccd.edu to bixby.org.</p>
</li>
</ul>
</ul>
<p>
</p>
<hr />
<h1><a name="welcome_to_perl_ix">Welcome to Perl/iX</a></h1>
<p>This is the official home page for the HP e3000 MPE/iX
( <a href="http://www.hp.com/go/e3000">http://www.hp.com/go/e3000</a> ) port of the Perl scripting
language ( <a href="http://www.perl.com/">http://www.perl.com/</a> ) 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
( <a href="http://www.lsoft.com/scripts/wl.exe?SL1=HP3000-L&H=RAVEN.UTC.EDU">http://www.lsoft.com/scripts/wl.exe?SL1=HP3000-L&H=RAVEN.UTC.EDU</a> ) and
its associated gatewayed newsgroup comp.sys.hp.mpe.</p>
<p>I'm doing this port because I can't live without Perl on the Unix
machines that I administer, and I want to have the same power
available to me on MPE.</p>
<p>Please send your comments, questions, and bug reports directly to me,
Mark Bixby ( <a href="http://www.bixby.org/mark/">http://www.bixby.org/mark/</a> ). Or just post them to HP3000-L.</p>
<p>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
( <a href="http://jazz.external.hp.com/src/gnu/gnuframe.html">http://jazz.external.hp.com/src/gnu/gnuframe.html</a> ).</p>
<p>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).</p>
<p>IMPORTANT NOTICE: Yes, I do work for the HP CSY R&amp;D lab, but ALL of
the software you download from bixby.org is my personal freeware that
is NOT supported by HP.</p>
<p>
</p>
<hr />
<h1><a name="system_requirements_for_perl_ix">System Requirements for Perl/iX</a></h1>
<ul>
<li>
<p>MPE/iX 5.5 or later. This version of Perl/iX does NOT run on
MPE/iX 5.0 or earlier, nor does it run on &quot;classic&quot; MPE/V machines.</p>
</li>
<li>
<p>If you wish to recompile Perl, you must install both GNUCORE and
GNUGCC from jazz (http://jazz.external.hp.com/src/gnu/gnuframe.html).</p>
</li>
<li>
<p>Perl/iX will be happier on MPE/iX 5.5 if you install the MPEKX40B
extended POSIX filename characters patch, but this is optional.</p>
</li>
<li>
<p>Patch LBCJXT6A is required on MPE/iX 5.5 machines in order to
prevent Perl/iX from dying with an unresolved external reference
to _getenv_libc.</p>
</li>
<li>
<p>If you will be compiling Perl/iX yourself, you will also need
Syslog/iX ( <a href="http://www.bixby.org/mark/syslogix.html">http://www.bixby.org/mark/syslogix.html</a> ) and the
/BIND/PUB/include and /BIND/PUB/lib portions of BIND/iX
( <a href="http://www.bixby.org/mark/bindix.html">http://www.bixby.org/mark/bindix.html</a> ).</p>
</li>
</ul>
<p>
</p>
<hr />
<h1><a name="how_to_obtain_perl_ix">How to Obtain Perl/iX</a></h1>
<ol>
<li>
<p>Download Perl using either FTP.ARPA.SYS or some other client</p>
</li>
<li>
<p>Extract the installation script</p>
</li>
<li>
<p>Edit the installation script</p>
</li>
<li>
<p>Run the installation script</p>
</li>
<li>
<p>Convert your *.a system archive libraries to *.sl shared libraries</p>
</li>
</ol>
<p>Download Perl using FTP.ARPA.SYS from your HP 3000 (the preferred
method).....</p>
<pre>
    <span class="operator">:</span><span class="variable">HELLO</span> <span class="variable">MANAGER</span><span class="operator">.</span><span class="variable">SYS</span>
    <span class="operator">:</span><span class="variable">XEQ</span> <span class="variable">FTP</span><span class="operator">.</span><span class="variable">ARPA</span><span class="operator">.</span><span class="variable">SYS</span>
    <span class="keyword">open</span> <span class="variable">ftp</span><span class="operator">.</span><span class="variable">bixby</span><span class="operator">.</span><span class="variable">org</span>
    <span class="variable">anonymous</span>
    <span class="variable">your</span><span class="variable">@email</span><span class="operator">.</span><span class="variable">address</span>
    <span class="variable">bytestream</span>
    <span class="variable">cd</span> <span class="operator">/</span><span class="variable">pub</span><span class="operator">/</span><span class="variable">mpe</span>
    <span class="variable">get</span> <span class="variable">perl</span><span class="operator">-</span><span class="number">5.6</span><span class="operator">.</span><span class="number">0</span><span class="operator">-</span><span class="variable">mpe</span><span class="operator">.</span><span class="variable">tar</span><span class="operator">.</span><span class="variable">Z</span> <span class="operator">/</span><span class="variable">tmp</span><span class="operator">/</span><span class="variable">perl</span><span class="operator">.</span><span class="variable">tar</span><span class="operator">.</span><span class="variable">Z</span><span class="operator">;</span><span class="variable">disc</span><span class="operator">=</span><span class="number">2147483647</span>
    <span class="keyword">exit</span>
</pre>
<p>.....Or download using some other generic web or ftp client (the alternate
method)</p>
<p>Download the following files (make sure that you use &quot;binary mode&quot; or
whatever client feature that is 8-bit clean):</p>
<ul>
<li>
<p>Perl from</p>
<pre>
    <a href="http://www.bixby.org/ftp/pub/mpe/perl-5.6.0-mpe.tar.Z">http://www.bixby.org/ftp/pub/mpe/perl-5.6.0-mpe.tar.Z</a></pre>
<p>or</p>
<pre>
    <a href="ftp://ftp.bixby.org/pub/mpe/perl-5.6.0-mpe.tar.Z">ftp://ftp.bixby.org/pub/mpe/perl-5.6.0-mpe.tar.Z</a></pre>
</li>
<li>
<p>Upload those files to your HP 3000 in an 8-bit clean bytestream manner to:</p>
<pre>
    /tmp/perl.tar.Z</pre>
</li>
<li>
<p>Then extract the installation script (after both download methods)</p>
<pre>
    :CHDIR /tmp
    :XEQ TAR.HPBIN.SYS 'xvfopz /tmp/perl.tar.Z INSTALL'</pre>
</li>
<li>
<p>Edit the installation script</p>
<p>Examine the accounting structure creation commands and modify if
necessary (adding additional capabilities, choosing a non-system
volume set, etc).</p>
<pre>
    :XEQ VI.HPBIN.SYS /tmp/INSTALL</pre>
</li>
<li>
<p>Run the installation script.</p>
<p>The accounting structure will be created and then all files will be
extracted from the archive.</p>
<pre>
    :XEQ SH.HPBIN.SYS /tmp/INSTALL</pre>
</li>
<li>
<p>Convert your *.a system archive libraries to *.sl shared libraries</p>
<p>You only have to do this ONCE on your MPE/iX 5.5 machine in order to
convert /lib/lib*.a and /usr/lib/lib*.a libraries to their *.sl
equivalents.  This step should not be necessary on MPE/iX 6.0 or later
machines because the 6.0 or later update process does it for you.</p>
<pre>
    :XEQ SH.HPBIN.SYS /PERL/PUB/LIBSHP3K</pre>
</li>
</ul>
<p>
</p>
<hr />
<h1><a name="perl_ix_distribution_contents_highlights">Perl/iX Distribution Contents Highlights</a></h1>
<dl>
<dt><strong><a name="item_readme">README</a></strong>

<dd>
<p>The file you're reading now.</p>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?