(I hope this is not OT, my RPM foo is low. I am trying to debug a libxml2/libxslt problem) ..
I am trying to debug a stylesheet problem, where I get this error: runtime error: file /home/bkc/src/eclipse/main24/tal2xslt/tal2xslt/xsl/tal2xslt. xsl line 450 element copy-of Attribute nodes must be added before any child nodes to an element. I do know what this means, but I'm stumped trying to figure out how to debug it. My stylesheet is complex, and this particular template could be called from several different places via apply-templates. It would be handy to know the name of the output element that already has children, the names and values of the attributes already applied to that element (if any), the name of the attribute that is trying to be created, and the name(s) of child elements that already exist. So I thought I'd try modifying libxslt/transform.c to see if I could output at least some of the above data in the error message. I'm using RHEL4, but Python 2.4 is installed as an alternate install, so it's in /usr/local/bin/python2.4 When I install libxml2-2.6.28-1.src.rpm (via rpmbuild --rebuild), it picks up the system python (version 2.3) To work around this, after installing the source rpms for libxml2 and libxslt, I've been rebuilding libxml2-python-2.6.21 with python2.4. I know that libxml2-python- 2.6.21 is quite old. Another issue is that xsltproc does not generate the error when performing a transform, however my Python application does generate the error, even though I think the parameters and input files are exactly the same. So I am thinking that maybe using libxml2-python-2.6.21 isn't doing what I expect, and that I'm still getting some other version of libxslt via python2.4 (but I only see one libxslt.so* file on my system) (I couldn't find a way from the python bindings to determine what version of libxml2 and libxslt was actually being loaded) So I've installed the source rpms and modified the error message in libxslt/transform.c and now I want to rebuild from the SPEC file and this time tell configure to use the alternate python, then install and this way I should be sure that python2.4 gets the correct, current bindings for libxslt. I added this to libxml2.spec %configure --with-python=/usr/local/bin/python2.4 during rebuild, I see at the top of config.log PYTHON='/usr/local/bin/python2.4' PYTHON_INCLUDES='' PYTHON_SITE_PACKAGES='/usr/local/lib/python2.4/site-packages' that looks good to me. But the build fails with this at the end: Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: /bin/sh /usr/bin/python libxml2 = 2.6.27 pkgconfig zlib-devel Processing files: libxml2-python-2.6.27-1 error: File not found by glob: /var/tmp/libxml2-2.6.27-root/usr/lib/python*/site- packages/libxml2.py* error: File not found by glob: /var/tmp/libxml2-2.6.27-root/usr/lib/python*/site- packages/drv_libxml2.py* error: File not found by glob: /var/tmp/libxml2-2.6.27-root/usr/lib/python*/site- packages/libxml2mod* Why is configure not looking in the correct directory? does it not know to copy from /usr/local when creating the temporary working files? --- Perhaps the better question is, when using the src rpms (or even the binary rpms), how can I get support for alternate python installs on linux? -- Brad Clements, [EMAIL PROTECTED] (315)268-1000 http://www.murkworks.com AOL-IM or SKYPE: BKClements _______________________________________________ xml mailing list, project page http://xmlsoft.org/ [email protected] http://mail.gnome.org/mailman/listinfo/xml
