[Expat-discuss] Rebuilding Expat for ActivePerl

Warren Crossing wcrossing@companywatch.net
Wed, 9 Oct 2002 14:30:34 +0100


>From my understanding of the current sitch, theres not a lot of clear doco..
but I think... In order to upgrade the parser 2.31 to work with later builds
of Expat on win32.. 

1. I need to compile Expat_1_95_2 source files into dynamic link library
(.dll) using a .DEF file

2. I have to create/get an .xs file XSUB (perlxs) that controls the
input/output to the library produced above 

3. Then I Compile the .xs using xsubpp and it builds a new library which can
work with XML::Parser 2.31

Simple really, but so far it is impossible [ for me ] to get past step 1.

I've taken out the __declspec(dllexport) from the source code so I can use
the .DEF instead, and guess that the .DEF file gets put into the library to
allow access to functions by ordinals [dynamic] rather than entry point
addresses [static]

I can generate a stock standard .xs file using h2xs against Expat.h, then
running make.. I think I need to customize the Makefile.pl here
LIBS,PREREQ_PM etc. It always complains about not finding the library, so as
yet I cant perform make install
	
I assume the .xs file gets compiled into the into the library to act as a
bridge between perl and the c functions and when I call my perl subs they
talk to the interface this xsub adds to the lib.

Is there already a .DEF and .XS (even an earlier version) that I can use? Is
this the forum for this message? Can anyone share any insight?

In the mean time I'm using XML::SAX::Pureperl .. because my boss isn't so
eager as me =o) 

Please advise, thanks in advance

Regards,
Warren Crossing


> -----Original Message-----
> From:	Fred L. Drake, Jr. [SMTP:fdrake@acm.org]
> Sent:	Tuesday, October 08, 2002 9:59 PM
> To:	Karl Waclawek
> Cc:	Warren Crossing; expat-discuss@libexpat.org
> Subject:	Re: [Expat-discuss] Rebuilding Expat for ActivePerl
> 
> 
> Karl Waclawek writes:
>  > AFAIK, applications working with 1_95_2 should still work with 1_95_5.
>  > Don't know about 1_95_1.
> 
> This may not be binary compatible, though -- a relink is needed on
> Windows since we don't control how the link table for Expat is built.
> That means DLLs for different versions of Expat are not "drop in"
> compatible.
> 
> SourceForge bug #579144 describes this in slightly more detail:
> 
> http://sourceforge.net/tracker/index.php?func=detail&aid=579144&group_id=1
> 0127&atid=110127
> 
> 
>   -Fred
> 
> -- 
> Fred L. Drake, Jr.  <fdrake at acm.org>
> PythonLabs at Zope Corporation
> 
> _______________________________________________
> Expat-discuss mailing list
> Expat-discuss@libexpat.org
> http://mail.libexpat.org/mailman-21/listinfo/expat-discuss
> 
> 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This message is intended only for the addressee and may 
contain information that is confidential or privileged. 
Unauthorised use is strictly prohibited and may be unlawful.

If you are not the addressee, you should not read, copy, 
disclose or otherwise use this message, except for the
purpose of delivery to the addressee. If you have received
this in error, please delete and advise us immediately.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Although Company Watch makes every reasonable effort to keep
its network and systems free from viruses, the company
accepts no responsibility for computer viruses transmitted
through this mail or in any attachments. It is your
responsibility to virus scan any attachments we send to you.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~