Operating System - HP-UX
1752750 Members
4890 Online
108789 Solutions
New Discussion юеВ

XML::Parser against libexpat

 
SOLVED
Go to solution
Syed Madar J S
Frequent Advisor

XML::Parser against libexpat

laksh# perl -MXML::Parser -e 'print "ok\n";'
Can't load '/opt/perl_32/lib/site_perl/5.8.8/PA-RISC1.1-thread-multi/auto/XML/Parser/Expat/Expat.sl' for module XML::Parser::Expat: No such file or directory at /opt/perl_32/lib/5.8.8/PA-RISC1.1-thread-multi/DynaLoader.pm line 230.
at /opt/perl_32/lib/site_perl/5.8.8/PA-RISC1.1-thread-multi/XML/Parser.pm line 14
Compilation failed in require at /opt/perl_32/lib/site_perl/5.8.8/PA-RISC1.1-thread-multi/XML/Parser.pm line 14.
BEGIN failed--compilation aborted at /opt/perl_32/lib/site_perl/5.8.8/PA-RISC1.1-thread-multi/XML/Parser.pm line 18.
Compilation failed in require.
BEGIN failed--compilation aborted.


I know that this error can be rectified by installing libexpat library from sourceforge as mentioned in HP's perl web-page.

But i wanted to know - whether there is any workaround, or any other module in perl, by adding it solves this problem -- that is without having to use libexpat and get the issue resolved.

Your inputs please.
12 REPLIES 12
James R. Ferguson
Acclaimed Contributor

Re: XML::Parser against libexpat

Hi:

Perhaps a palatble solution is to fetch the requisite library from here:

http://hpux.connect.org.uk/hppd/hpux/Development/Tools/expat-2.0.1/

Regards!

...JRF...
Syed Madar J S
Frequent Advisor

Re: XML::Parser against libexpat

Thanks James,

But that still has an external dependency - I was searching for a solution without having to install expat seperately - thanks for pointing out this link. It helped though.
James R. Ferguson
Acclaimed Contributor

Re: XML::Parser against libexpat

Hi (again):

I'm a bit surprised that you don't have this library. I do on a Perl 5.8.8 installed from the HP depots.

Do you have '/opt/perl_64/lib/site_perl/5.8.8/PA-RISC2.0-thread-multi-LP64/auto/XML/Parser/Expat/Expat.sl' ?

If so, you might switch to the 64-bit Perl (and fetch any modules from CPAN that you added to your 32-bit environment).

Regards!

...JRF...
Syed Madar J S
Frequent Advisor

Re: XML::Parser against libexpat

Hi,

i am using perl version: E.5.8.8.C,

would be good to know what you are using,
can you please share the details of "swlist perl".

Thanks,
Syed.
James R. Ferguson
Acclaimed Contributor

Re: XML::Parser against libexpat

Hi (again):

> i am using perl version: E.5.8.8.C,

I have HP's 'D.5.8.8.B' and 'D.5.8.8.A' installed on PA-RISC and IA64 for 11.11 and 11.23 and the library in question is present in the appropriate form.

I just downloaded (for 11.23) version 'E.5.8.8.D'.

If you do:

# swlist -d -l file @/tmp/perl_E.5.8.8.D_HP-UX_B.11.23_IA_PA.depot|grep Expat

...you will see that the library is present in various forms necessary.

Regards!

...JRF...
Syed Madar J S
Frequent Advisor

Re: XML::Parser against libexpat

Thanks Jim.

Yeah that is strange, i see the libraries to be present but still the XML related modules don't load unless expat2.01 is installed from the hp-connect site.

I remember in previous versions D.5.8.8.x, i didn't had to install anything like expat seperately - just install perl and XML modules worked fine - quite puzzling

Shinji Teragaito_1
Respected Contributor

Re: XML::Parser against libexpat

Hi,

As you found out, Expat.so in E.5.8.8.C requires libexpat.so
regardless of 32-bit or 64-bit. But the perl bundle for
E.5.8.8.C doesn't provide it. This is the root cause for the
problem you encountered.

# swlist | grep perl
perl E.5.8.8.C Perl Programming Language
# ldd /opt/perl_32/lib/site_perl/5.8.8/IA64.ARCHREV_0-thread-multi/auto/XML/Parser/Expat/Expat.so
Unable to find library 'libexpat.so'.
#

It seems to me Expat.so in perl D.5.8.8.B on 11.23 was linked
with libexpat.a, not libexpat.so.

NOTE:
=====
I think the three depot files for E.5.8.8.D which are available
at software.hp.com have the same problem:

perl_E.5.8.8.D_HP-UX_B.11.11_32_64.depot
perl_E.5.8.8.D_HP-UX_B.11.23_IA_PA.depot
perl_E.5.8.8.D_HP-UX_B.11.31_IA_PA.depot

On the other hand, the following version doesn't have the same
problem because it seems to me Expat.so in the following depot
is linked with the archive library:

perl_D.5.8.9.A.BETA1_HP-UX_B.11.31_IA_PA.depot

Shinji
Shinji Teragaito_1
Respected Contributor
Solution

Re: XML::Parser against libexpat

Here's an additional information. The problem you have to install libexpat shared library to perl E.5.8.8.C has been fixed in the following patches:

PHSS_39651 - s700_800 11.11 32-bit perl patch on E.5.8.8.C
PHSS_39652 - s700_800 11.23 32-bit perl patch on E.5.8.8.C
PHSS_39653 - 11.31 32-bit perl patch on E.5.8.8.C
PHSS_39691 - s700_800 11.11 64-bit perl patch on E.5.8.8.C
PHSS_39692 - s700_800 11.23 64-bit perl patch on E.5.8.8.C
PHSS_39693 - 11.31 64-bit perl patch on E.5.8.8.C

All of them has become available from ITRC.

Hope this helps you,

Shinji
Syed Madar J S
Frequent Advisor

Re: XML::Parser against libexpat

Thanks Shinji