This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How to get Libxml2/Libxslt Python Bindings (was Re: [ANNOUNCE]LibXSLT (1.0.27)...)


Elfyn,

On Thu, Jun 05, 2003 at 05:45:40AM +0100, Elfyn McBratney wrote:
> PS- Peter, `mv {cyg,lib}xml2mod.dll' does the trick.

If maintaining the "cyg" prefix is considered important, then there is
another solution...

If a Python shared extension module is called "xyzfoo.$SO" (where $SO is
so, .dll, etc.), then it must export an initialization function called
"initxyzfoo".  Therefore, cygxml2mod.dll must export "initcygxml2mod"
not "initlibxml2mod":

    $ objdump -p libxml2mod.dll | fgrep init
            [ 511] initlibxml2mod

The solution is to change the shared extension module source from:

    void
    initlibxml2mod(void)
    {
        ...
    }

to the following:

    void
#ifdef __CYGWIN__
    initcygxml2mod(void)
#else
    initlibxml2mod(void)
#endif /* __CYGWIN__ */
    {
        ...
    }

And similarly for libxslt.

Jason

-- 
PGP/GPG Key: http://www.tishler.net/jason/pubkey.asc or key servers
Fingerprint: 7A73 1405 7F2B E669 C19D  8784 1AFD E4CC ECF4 8EF6

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]