Operating System - OpenVMS
1820136 Members
3379 Online
109619 Solutions
New Discussion юеВ

Re: Perl Module Installation problem

 
James T Horn
Frequent Advisor

Perl Module Installation problem

I am using Perl 5.8.6, OpenVMS 8.3 1h1, on an rx6600 itanium box, trying to install several modules and they are all behaving the same.

I created a directory PERL_ROOT:[SITE], put the .gz file in that directory,
did gzip -d (module file),
vmstar/extract (module file),
set default (module file),
perl makefile.pl
mms
mms test

and got this:
$ mms test

MCR $1$dga42:[perl5_8_6]perl.exe "-MExtUtils::Command::MM" "-e" "test_harness(0, '[.blib.lib]', '[.blib.arch]')" t/*.t
t/basic...........
Can't locate Email/Date/Format.pm in @INC (@INC contains: . perl_root:[lib.VMS_IA64.5_8_6] perl_root:[lib] perl_root:[lib.si
te_perl.VMS_IA64] perl_root:[lib.site_perl] /perl_root/lib/site_perl .) at t/basic.t line 5.
BEGIN failed--compilation aborted at t/basic.t line 5.
# Looks like your test died before it could output anything.

%SYSTEM-W-NOSUCHFILE, no such file

dubious
Test returned status 2320 (wstat 256, 0x100)
(VMS status is 2320)
DIED. FAILED tests 1-3
Failed 3/3 tests, 0.00% okay
t/pod-coverage....

skipped
all skipped: Test::Pod::Coverage 1.08 required for testing POD coverage
t/pod.............

skipped
all skipped: Test::Pod 1.14 required for testing POD
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/basic.t 232 256 3 6 200.00% 1-3
2 tests skipped.
Failed 1/3 test scripts, 66.67% okay. 3/3 subtests failed, 0.00% okay.
%SYSTEM-F-ABORT, abort
%MMS-F-ABORT, For target TEST_DYNAMIC, CLI returned abort status: %X0000002C.
-SYSTEM-F-ABORT, abort

I will then follow with mms install, then turn around and do mms test and the test works.
I've done this before a couple of months ago to another system and did not have these issues but used mmk instead of mms (not sure that is a factor in the problem).

If someone can give me an idea on where to look for the issue I would appreciate any assistance.
15 REPLIES 15
Steven Schweda
Honored Contributor

Re: Perl Module Installation problem

I know nothing, but it might be interesting
to know which version of VMSTAR and MMS
you're using.

VMSTAR
MMS /IDENT

> Can't locate Email/Date/Format.pm [...]

Can you find it/them if you look around?

> [...] compilation aborted at t/basic.t line 5.

What's there?
Joseph Huber_1
Honored Contributor

Re: Perl Module Installation problem

Maybe the Perl experts here can say which Perl/MMS/VMS/ODS combination will work,
meanwhile do what I usually do:
put the Perl modules to be installed onto an ODS2 disk (I use an LD container), and retry.
http://www.mpp.mpg.de/~huber
Steven Schweda
Honored Contributor

Re: Perl Module Installation problem

> put the Perl modules to be installed onto
> an ODS2 disk (I use an LD container), and
> retry.

Some editions of VMSTAR offer a /ODS2 ("o")
option:
/ODS2 -- Restores files using ODS-2 naming on ODS-5 volumes


alp $ vmstar xfv [-]x.tar
Mar 23 02:46:54 2010 6 [SMS.ITRC.TEST]a.b.c;
alp $ dg

Directory ALP$DKA0:[SMS.ITRC.test]

a^.b.c;1 1 23-MAR-2010 02:47:54.02 (RWED,RWED,RE,)

Total of 1 file, 1 block.

alp $ delete *.*;*
alp $ vmstar xfvo [-]x.tar
Mar 23 02:46:54 2010 6 [SMS.ITRC.TEST]A.B_C
alp $ dg

Directory ALP$DKA0:[SMS.ITRC.test]

A.B_C;1 1 23-MAR-2010 02:46:54.00 (RWED,RWED,RE,)

Total of 1 file, 1 block.


Some versions also offer /UNDERDOT ("u"):

/UNDERDOT -- "a.b.c" -> ODS2 "A_B.C" (not "A.B_C")


alp $ delete *.*;*
alp $ vmstar xfvou [-]x.tar
Mar 23 02:46:54 2010 6 [SMS.ITRC.TEST]A_B.C
alp $ dg

Directory ALP$DKA0:[SMS.ITRC.test]

A_B.C;1 1 23-MAR-2010 02:46:54.00 (RWED,RWED,RE,)

Total of 1 file, 1 block.


As usual, many things are possible.

Some versions of MMS have more trouble than
others with different-case file names.
Craig A Berry
Honored Contributor

Re: Perl Module Installation problem

> vmstar/extract (module file),
> set default (module file),

I assume you mean "module directory" in the second line. In any case, what you omitted may be important. If that directory name has dots in it that are not directory delimiters, it might confuse some part of the extension building infrastructure or module loading infrastructure, especially in a six-year-old version of Perl (5.10.1 is current, 5.12.0 is imminent).

You can use vmstar/ods2 as others suggest or you can simply rename the top-level directory after unpacking it to something without dots. Also, I don't recommend putting anything under perl_root:[000000] that's not put there by an installer; you never know what it might collide with.
James T Horn
Frequent Advisor

Re: Perl Module Installation problem

vmstar & gzip are both from the Freeware v8.0 CD [000tools] directory.

$ vmstar
VMS TAR V3.3-4 (Dec 2 2004)
usage (VMS style): TAR tarfile file[,...]
Options: /HELP -- Print this text and exits
/LIST -- List contents of tarfile
/CREATE -- Create a tarfile
/EXTRACT -- Extract files from tarfile
/VERBOSE -- Display processed file info
/CONFIRM -- Prompt before store/extract
/BINARY -- Create binary files
/AUTOMATIC -- Automatically determine file type
/DOTS -- Maintain "." usage
/FORCE -- Forces copying of unsupported file formats
/PADDING -- Adds padding block at the end of the tar file
/BLOCK_FACTOR -- Amount of 512 byte records in a tar block
/DATE_POLICY -- Decide what times of extracted files
will be set:
[NO]CREATION
[NO]MODIFICATION


$ gzip --version
$1$dga42:[000tools.][000000.ia64_images]gzip.exe;1 1.2.4 (18 Aug 93)
Compilation options:
NO_DIR UTIME STDC_HEADERS HAVE_UNISTD_H NO_SYMLINK NO_MULTIPLE_DOTS

I've included the output from trying to install one of the modules.
Peter Barkas
Regular Advisor

Re: Perl Module Installation problem

I use HP CSWS_PERL V2.1, PERL21_UPDATE V1.0, VMS TAR V3.4 (Dec 10 2007), GZIP.EXE 1.2.4 (18 Aug 93)on Alpha V8.3 and MMK.

System logicals are defined for perlshr and perl_root.

Haven't tried MMS as MMK always works for me.

When I installed for example parseexcel, I used the standard:

perl makefile.pl
mmk
mmk test
mmk install

and everything worked.

Probably not much help.
Peter Barkas
Regular Advisor

Re: Perl Module Installation problem

I used an ODS2 disk.

Sorry to state the obvious but are there prerequisite modules for the modules that you are installing?
Peter Barkas
Regular Advisor

Re: Perl Module Installation problem

use Email::Date::Format qw(email_date);

Fails on my system:

Can't locate Email/Date/Format.pm in @INC (@INC contains: perl_root:[lib.VMS_AXP.5_8_6] perl_root:[lib] perl_root:[lib.site_perl.VMS
_AXP] perl_root:[lib.site_perl] /perl_root/lib/site_perl .) at DKA300:[BARKAS.PROJECTS.WMSNET.PERL]test2.pl line 1.

http://search.cpan.org/~rjbs/Email-Date-Format-1.001/lib/Email/Date/Format.pm
James T Horn
Frequent Advisor

Re: Perl Module Installation problem

Some of the other modules I have tried are Time::Date 1.20
HTML::Tagset 3.20
HTML::Parser 3.64
James T Horn
Frequent Advisor

Re: Perl Module Installation problem

>use Email::Date::Format qw(email_date);
>
>Fails on my system:

>Can't locate Email/Date/Format.pm in @INC >(@INC contains: perl_root

Did you try following the MMS TEST with MMS INSTALL, then try MMS TEST again?
Peter Barkas
Regular Advisor

Re: Perl Module Installation problem

No I haven't got the email/date/time module installed, the error is when I try to 'use' it which seems to be what you were seeing?
James T Horn
Frequent Advisor

Re: Perl Module Installation problem

I'm seeing during the MMS Test.

Checking with HP, they suggested not using the PERL_ROOT:[SITE] directory, but creating a directory not within Perl's directories, (this time I tried a ODS-2 drive) and that worked.
Steven Schweda
Honored Contributor

Re: Perl Module Installation problem

> vmstar & gzip are both from the Freeware
> v8.0 CD [000tools] directory.

Gzip is not a likely source of this problem.
MMS is.

> VMSTAR
> MMS /IDENT

Still wondering about one of those.

For a newer VMSTAR, you might investigate:

http://antinode.info/ftp/vmstar/

I'm unaware of any problems with the latest
one. (Which may not prove much, but
complaints are always welcome.)
Craig A Berry
Honored Contributor

Re: Perl Module Installation problem

>Checking with HP, they suggested not using
>the PERL_ROOT:[SITE] directory, but creating
>a directory not within Perl's directories,
>(this time I tried a ODS-2 drive) and that
>worked.

Good, that was also one of my recommendations.

The symptom of not being able to find a module looks the same whether you simply don't have the module (Peter) or if special overrides in the build infrastructure to load a module for testing purposes when it has been built but not yet installed aren't working right (James).

Basically the test harness prepends local library directories to @INC, the array containing a list of paths from which modules may be loaded. It's the moral equivalent of prepending items to a search list logical, though logicals are not specifically involved here.

The reason the tests worked after installing the module is that the module would then be found in its final destination rather than its temporary, pre-installation location.
Rick Retterer
Respected Contributor

Re: Perl Module Installation problem

If you want to see what the @INC equates to with PERL, you simply using the -V switch (uppercase-V) and it will list out the current configuration of PERL including the path statements for @INC.

$ PERL "-V"

During testing, I found that when installing a perl module, it works best if you don't unzip the module package file or un-tar the file anywhere inside the PERL_ROOT:[000000] directory.

First gunzip the file.

Next, Create a empty, temporary subdirectory elsewhere on the disk, Copy the tar file into it, then un-tar the file using VMSTAR.

$ mcr []vmstar -xvf module-filename.tar

It will create yet another sub-directory where it expands all of the module sources and it then creates the Makefile.pl.

Change directory into the newly created sub-directory, where the Makefile.pl script is located, then execute your commands as per the README file.

$ perl Makefile.pl

$ mms (or mmk)

$ mms test

$ mms install

That's it. I was able to install the module you were attempting to install quite easily.

I sent you email on these steps, and you should be able to complete this in quick order.

Cheers,
Rick.
- Rick Retterer