Re: Followup: [xml-bindings]New releases and python



On Tue, Feb 12, 2002 at 02:17:40PM +0100, rm fabula de wrote:
> 
> ... and for XSLT Python bindings:
> 
> |      import libxslt
> |    File "/usr/local/lib/python2.1/site-packages/libxslt.py", line 2, in ?
> |      import libxsltmod
> |  ImportError: /usr/local/lib/python2.1/site-packages/libxsltmod.so: undefined symbol: libxml_xmlXPathParserContextPtrWrap
> 
> Hmmm, the symbol _is_ exported by libxml2mod.so (checked that with 'nm') and that library gets
> loaded from 'import libxml2' (checked that too), but:

  Hum, I can't reproduce this on my setup (RH-7.2 using the RPMs)
started as root on my build box to be sure there is no interference
with my development system....

[root backup root]# python
Python 1.5.2 (#1, Jul  5 2001, 03:02:19)  [GCC 2.96 20000731 (Red Hat Linux 7.1 2 on linux-i386
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>> import libxslt
>>> 

  For some reason it started to break with python2 ... strange
I'm pretty sure I tested it at some point this week-end, damn !

[root backup root]# python2
Python 2.1.1 (#1, Aug 13 2001, 19:37:40) 
[GCC 2.96 20000731 (Red Hat Linux 7.1 2.96-96)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> import libxslt
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/usr/lib/python2.1/site-packages/libxslt.py", line 2, in ?
    import libxsltmod
ImportError: Ô1: shared object not open

  Seems the Python2 has a bad interraction with loading a module
multiple time, the fact that it reports a garbled shared object name
is not nice.

> |  rmattes aiolos:/usr/local/src/libxslt/python/tests$ ldd /usr/local/lib/python2.1/site-packages/libxsltmod.so 
> |  	libxslt.so.1 => /usr/local/lib/libxslt.so.1 (0x4000d000)
> |  	libxml2.so.2 => /usr/local/lib/libxml2.so.2 (0x40035000)
> |  	libz.so.1 => /usr/lib/libz.so.1 (0x400d7000)
> |  	libm.so.6 => /lib/libm.so.6 (0x400e7000)
> |  	libexslt.so.0 => /usr/local/lib/libexslt.so.0 (0x40109000)
> |  	libc.so.6 => /lib/libc.so.6 (0x40114000)
> |  	/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
> |  
> 
> shouldn't libxsltmod.so also be linked against libxml2mod.so? 

  Possibly, yes. But there is something fishy, if the module has already been
loaded in the process address space why is there linker errors ???

Daniel

-- 
Daniel Veillard      | Red Hat Network https://rhn.redhat.com/
veillard redhat com  | libxml Gnome XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]