On Fri, 2004-08-13 at 03:11, Michael Bell wrote:
> Kevin wrote:
>
> > Or is this the problem?
> > "Can't locate XML/Parser.pm in @INC (@INC contains:
> > ..."
> >
> > I don't see XML/Parser.pm in @INC either. How do I get it there given
> > that I do have this module installed on my system?
>
> You can link it to a directory in you @INC array. Simply run find and
> then create an appropriate link from one of your directories in @INC to
> the file or a directory in the path of this file. The path must look
> exactly like for the original file.
>
Hi again Michael and thanks for your suggestion here. I tried it with
the following steps:
tombstone root # cat test.perl
#!/usr/bin/perl
print "[EMAIL PROTECTED] is @INC\n";
tombstone root # ./test.perl
@INC is /etc/perl /usr/lib/perl5/site_perl/5.8.4/i686-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.2
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl
/usr/lib/perl5/5.8.4/i686-linux-thread-multi /usr/lib/perl5/5.8.4
/usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.2 .
tombstone root # cd /usr/local/lib/site_perl
tombstone site_perl # ln -s \
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux/XML XML
tombstone site_perl # ls -l
total 0
lrwxrwxrwx 1 root root 47 Aug 17 08:50 XML ->
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux/XML
tombstone site_perl # cd XML
tombstone XML # ls -l
total 156
drwxr-xr-x 4 root root 4096 Aug 10 13:41 GDOME
-r--r--r-- 1 root root 12554 Aug 10 13:41 GDOME.pm
-r--r--r-- 1 root root 2862 Aug 10 13:41 GDOME.pod
drwxr-xr-x 3 root root 4096 Aug 10 13:54 LibXML
-r--r--r-- 1 root root 31844 Aug 10 09:29 LibXML.pm
-r--r--r-- 1 root root 5338 Aug 10 09:29 LibXML.pod
-r--r--r-- 1 root root 11061 Aug 10 09:29 LibXSLT.pm
drwxr-xr-x 4 root root 4096 Aug 10 08:25 Parser
-r--r--r-- 1 root root 27103 Aug 10 08:25 Parser.pm
drwxr-xr-x 4 root root 4096 Aug 10 09:28 Sablotron
-r--r--r-- 1 root root 29538 Aug 10 09:28 Sablotron.pm
-r--r--r-- 1 root root 7889 Aug 10 09:29 benchmark.pl
tombstone XML # ls -l Parser
total 48
drwxr-xr-x 2 root root 4096 Aug 10 08:25 Encodings
-r--r--r-- 1 root root 33917 Aug 10 08:25 Expat.pm
-r--r--r-- 1 root root 1571 Aug 10 08:25 LWPExternEnt.pl
drwxr-xr-x 2 root root 4096 Aug 10 08:25 Style
So I'm thinking I've successfully linked the perl modules in
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux/XML to a directory that is
in @INC.
However, when I run the ./configure and make commands now, I get a
slightly different error:
XML-Twig-3.09/MANIFEST
make[4]: Entering directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules'
Checking if your kit is complete...
Looks good
Warning: prerequisite XML::Parser 2.23 not found.
Writing Makefile for XML::Twig
make[4]: Leaving directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules'
make[4]: Entering directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules/XML-Twig-3.09'
/usr/bin/perl5.8.4 speedup Twig.pm.slow > Twig.pm
Can't locate loadable object for module XML::Parser::Expat in @INC (@INC
contains: ../Digest-SHA1-2.02/blib/lib ../IO-Socket-SSL-0.92/blib/lib
<snipped for brevity>
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl
/usr/lib/perl5/5.8.4/i686-linux-thread-multi /usr/lib/perl5/5.8.4
/usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.2 .) at
/usr/local/lib/site_perl/XML/Parser.pm line 14
Compilation failed in require at /usr/local/lib/site_perl/XML/Parser.pm
line 14.
BEGIN failed--compilation aborted at
/usr/local/lib/site_perl/XML/Parser.pm line 18.
Compilation failed in require at speedup line 5.
BEGIN failed--compilation aborted at speedup line 5.
make[4]: *** [Twig.pm] Fehler 255
make[4]: Leaving directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules/XML-Twig-3.09'
make[3]: *** [XML-Twig-3.09] Error 2
make[3]: Leaving directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules'
make[2]: *** [modules] Error 2
make[2]: Leaving directory
`/mnt/tmp/working/openca-0.9.2-RC6/src/modules'
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/mnt/tmp/working/openca-0.9.2-RC6/src'
make: *** [src] Error 2
Strangely, when I run make a second time, immediately after getting this
error, it does complete successfully. I'm not sure if it's skipping
over the portions that caused the failure initially or if it's including
them and getting it right the second time or what, but I'd still like to
resolve the problem with XML::Parser just on general principle---perhaps
this is a symptom of a more general problem with my perl installation
and I'd prefer to resolve it now rather than ignore it and have it cause
other problems later.
When I look at the file that the error message is complaining about, I
see the following:
tombstone XML # less -N /usr/local/lib/site_perl/XML/Parser.pm
1 # XML::Parser
2 #
3 # Copyright (c) 1998-2000 Larry Wall and Clark Cooper
4 # All rights reserved.
5 #
6 # This program is free software; you can redistribute it and/or
7 # modify it under the same terms as Perl itself.
8
9 package XML::Parser;
10
11 use Carp;
12
13 BEGIN {
14 require XML::Parser::Expat;
15 $VERSION = '2.34';
16 die "Parser.pm and Expat.pm versions don't match"
17 unless $VERSION eq $XML::Parser::Expat::VERSION;
18 }
19
20 use strict;
...
I have XML-Parser version 2.34 installed, and it seems pretty clear that
both Parser.pm and Expat.pm are from this version:
tombstone XML # epm -qf
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux/XML/Parser.pm
XML-Parser-2.34
tombstone XML # epm -qf
/usr/lib/perl5/vendor_perl/5.8.4/i686-linux/XML/Parser/Expat.pm
XML-Parser-2.34
Therefore I don't think it's the version comparison that's failing
here. I think it's the require of the Expat module.
But I would think that with /usr/local/lib/site_perl being in @INC, and
with the make process finding XML::Parser (it is clearly parsing the
file /usr/local/lib/site_perl/XML/Parser.pm and finding it problematical
at line 14), then it should easily also find the file
.../XML/Parser/Expat.pm which contains XML::Parser::Expat but it
doesn't seem to work that way.
Any suggestions?
> BTW it looks like on your system are at minimum two perl versions 5.8.2
> and 5.8.4.
Do you think my perl installation is broken somehow? As you mentioned,
I do have both 5.8.2 and 5.8.4 installed. That's because I recently
upgraded and the upgrade procedure recommends rebuilding the entire perl
library with the new perl binary and I did so, and the rebuild did
complete successfully, but I had to do it a few times before it finally
completed successfully with no interruptions. I think that all of the
modules under 5.8.2 were rebuilt with the 5.8.4 perl binary---at least
it looked that way during the library rebuild.
Any thoughts on how to solve the problem or get around this?
Or should I ask on the perl mailing lists?
TIA.
-Kevin
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
Openca-Users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/openca-users