Re: Similar make test error

Steve Mathias <[email protected]>
Newsgroups gmane.text.xml.xerces-p.devel
Message-ID <[email protected]>
>>>>> "Jason" == Jason E Stewart <[email protected]> writes:

Jason> Steve Mathias <[email protected]> writes:
>> Yes, all the xerces-c sample programs run fine.

Jason> Great, thanks.

Jason> If so then please grep the library symbols using the commands I
Jason> sent to Kai, and lets see what's happenging there.
>>  Here's what I get:
>> 
>> # nm -C /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so | grep -i
>> isanyslash

Jason> Whoa!! Check your symbolic links. Here's what mine are:

Jason> lrwxrwxrwx 1 jasons jasons 60 2003-06-06 03:56 libxerces-c.so ->
Jason> /home/jasons/build/xerces-c-src_2_3_0//lib/libxerces-c.so.23
Jason> lrwxrwxrwx 1 jasons jasons 62 2003-06-06 03:56 libxerces-c.so.23
Jason> -> /home/jasons/build/xerces-c-src_2_3_0//lib/libxerces-c.so.23.0
Jason> -rwxr-xr-x 1 jasons jasons 18161188 2003-06-06 03:56
Jason> libxerces-c.so.23.0

The links are there...

# ls -lF /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so*
lrwxrwxrwx    1 root     root           51 Oct 10 15:48 /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so -> /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so.23*
lrwxrwxrwx    1 root     root           53 Oct 10 15:48 /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so.23 -> /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so.23.0*
-rwxr-xr-x    1 root     root      4616162 Oct 10 15:48 /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so.23.0*

Jason> The real library is libxerces-c.so.23.0, try running 'nm -C' on
Jason> it instead. If that *still* shows no result, then I'm royally
Jason> confused, because there's no conditional code around the
Jason> isAnySlash() method.

...so, not surprisingly, there's still no symbol definition:

# nm -C /usr/local/xerces-c-src_2_3_0/lib/libxerces-c.so.23.0 | grep -i isanyslash


>> How can I fix this?

Jason> One of the ways is for me to simply tell SWIG to *not* provide
Jason> this method - after all it's completely useless to Perl - it's
Jason> only used by the underlying C++ layer. My standard policy is to
Jason> only expose C++ API methods if they're useful to Perl
Jason> programmers. I can release 2.3.0-2 that will fix this, but I'm
Jason> concerned that there is a deeper problem going on.

Jason> Do this:

Jason> in Xerces.pm, comment out the isAnySlash definition (line 477):

Jason> *isAnySlash = *XML::Xercesc::XMLPlatformUtils_isAnySlash;

Jason> in Xerces.C,

Jason> - comment out the _wrap_XMLPlatformUtils_isAnySlash code (from
Jason> line 2997 to line 3031) - comment out the
Jason> _wrap_XMLPlatformUtils_isAnySlash definition (line 53393)

Jason> You can also delete them if you want. I've done this and it
Jason> compiles and runs for me. Let me know if this fixes your
Jason> problem. If so, I'll release a new version.

That solves the problem.  The module loads and the vast majority of the
tests pass.

I still have a couple of failing tests, though.  Here's the 'make test'
summary:

Failed Test       Stat Wstat Total Fail  Failed  List of Failed
-------------------------------------------------------------------------------
t/AttributeList.t  255 65280     8    6  75.00%  6-8
t/Schema.t           0    11     3    0   0.00%  ??
12 subtests skipped.
Failed 2/35 test scripts, 94.29% okay. 3/35353 subtests failed, 99.99% okay.

Here's the verbose output from the failing tests:

# perl t/AttributeList.t 
Using /usr/local/src/perl/XML-Xerces-2.3.0-1/blib
1..8
ok 1 - module loaded
ok 2
ok 3
ok 4
<eagle scout>
<eagle scout>
ok 5
No matching function for overloaded 'AttributeList_getValue' at /usr/local/src/perl/XML-Xerces-2.3.0-1/blib/lib/XML/Xerces.pm line 221.
# Looks like you planned 8 tests but only ran 5.
# Looks like your test died just after 5.

# perl t/Schema.t        
1..3
ok 1 - module loaded
ok 2
ok 3
Segmentation fault

I'll do a little testing/coding of my own with it next week and I'll let
you know how that goes.

Steve
-- 
(    Stephen L. Mathias, Ph.D.                     (                    (
 )   Office of Biocomputing                         )  s m a t h i a s   )
(    University of New Mexico School of Medicine   (   @ p o b l a n o  (
 )   MSC08 4560                                     )  . h e a l t h .   )
(    1 University of New Mexico                    (   u n m . e d u    (
 )   Albuquerque, NM 87131-0001                     )                    )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.