Installing your prebuilt Perl There are several steps you need to take to get Perl installed and running. At some point we'll have a working install in DESCRIP.MMS, but for right now the procedure's manual, and goes like this. 1) Create a directory somewhere and define the concealed logical PERL_ROOT to point to it. For example, DEFINE/TRANS=(CONC,TERM) PERL_ROOT dka200:[perl.] 2) Unzip (or copy the currently unzipped) the entire distribution into PERL_ROOT:[000000]. (Make sure everything goes into the proper subdirectories if you're copying) 3) Either copy PERLSHR.EXE to SYS$SHARE, or to somewhere globally accessble and define the logical PERLSHR to point to it (DEFINE PERLSHR PERL_ROOT:[000000]PERLSHR.EXE or something like that). The PerlShr image should have W:RE protections on it. (Just W:E triggers increased security in the image activator. Not a huge problem, but Perl will need to have any other shared image it accesses INSTALLed. It's a huge pain, so don't unless you know what you're doing) Defining PERLSHR is a better option, as it lets you have multiple versions of perl installed at once. (Just change PERLSHR to point to the appropriate version) 4) Either define the symbol PERL somewhere, such as SYS$MANAGER:SYLOGIN.COM, to be "PERL :== $PERL_ROOT:[000000]PERL.EXE", or install Perl into DCLTABLES.EXE )Check out the section "Installing Perl into DCLTABLES" for more info), or put the image in a directory that's in your DCL$PATH (if you're using VMS 6.2 or higher). 5) Optionally define the command PERLDOC as PERLDOC :== $PERL_ROOT:[000000]PERL PERL_ROOT:[UTIL]PERLDOC.COM -T 6) Optionally define the command PERLBUG (the Perl bug report generator) as PERLBUG :== $PERL_ROOT:[000000]PERL PERL_ROOT:[UTIL]PERLBUG.COM" 7) Optionally define the command POD2MAN (Converts POD files to nroff source suitable for converting to man pages. Also quiets complaints during module builds) as DEFINE/NOLOG POD2MAN PERL_ROOT:[UTIL]POD2MAN.COM POD2MAN :== $PERL_ROOT:[000000]PERL POD2MAN 8) If you don't have a paging program installed, perl will do a simple TYPE/PAGE when reading docs through PERLDOC. The PERLDOC_PAGER logical will override this--if you don't have more, most, less, or look, you might want to: DEFINE PERLDOC_PAGER "TYPE/PAGE=SAVE=5" to save the last five pages. If you want to access the file via the system editor, a possible definition would be: DEFINE PERLDOC_PAGER "EDIT /READ_ONLY NOJOURNAL" (Courtesy of Sheldon Smith) * Installing Perl into DCLTABLES Courtesy of Brad Hughes: Put the following, modified to reflect where your .exe is, in PERL.CLD: define verb perl image perl_root:[exe]perl.exe cliflags (foreign) and then $ set command perl /table=sys$common:[syslib]dcltables.exe - /output=sys$common:[syslib]dcltables.exe $ install replace sys$common:[syslib]dcltables.exe and you don't need perl :== $perl_root:[exe]perl.exe.