Re: [Guest via RT] [cpan #6094] All tests fail

<[email protected]>
Newsgroups gmane.text.xml.xerces-p.devel
Message-ID <[email protected]>

   From: [email protected] (Jason E. Stewart)
   Date: Fri, 23 Apr 2004 10:37:43 +0530

   Here's what I get for the modules:

   ~/work/xml-xerces/perl $ nm blib/arch/auto/XML/Xerces/Xerces.so |grep PerlCallbackHandler.*set_callback_obj
   00206b64 T _ZN19PerlCallbackHandler16set_callback_objEP2sv
   001edf00 T _wrap_PerlCallbackHandler_set_callback_obj
   ~/work/xml-xerces/perl $ nm -C blib/arch/auto/XML/Xerces/Xerces.so |grep PerlCallbackHandler.*set_callback_obj
   00206b64 T PerlCallbackHandler::set_callback_obj(sv*)
   001edf00 T _wrap_PerlCallbackHandler_set_callback_obj
   ~/work/xml-xerces/perl $ nm blib/arch/auto/Handler/Handler.a  |grep PerlCallbackHandler.*set_callback_obj
   000004f0 T _ZN19PerlCallbackHandler16set_callback_objEP2sv
	    U _ZN19PerlCallbackHandler16set_callback_objEP2sv
	    U _ZN19PerlCallbackHandler16set_callback_objEP2sv
   ~/work/xml-xerces/perl $ nm -C blib/arch/auto/Handler/Handler.a |grep PerlCallbackHandler.*set_callback_obj
   000004f0 T PerlCallbackHandler::set_callback_obj(sv*)
	    U PerlCallbackHandler::set_callback_obj(sv*)
	    U PerlCallbackHandler::set_callback_obj(sv*)

   See what your modules are producing. 

Sorry, I did not give an answer to this question in my last e-mail.
The answer depends on whether I use the perl libraries obtained from
linking with the Xerces binaries obtained from Debian or those I
compiled from source my self.  The former are in /usr/lib, and the
latter are in /opt/lib.  (I set XERCES_LIB accordingly for each
separate build of Xerces.so, etc.)

For the "pre-compiled Debian binaries" case I get this (in all cases
the output of nm is piped through 'grep
PerlCallbackHandler.*set_callback_obj'):

nm blib/arch/auto/XML/Xerces/Xerces.so:
00159a40 T _wrap_PerlCallbackHandler_set_callback_obj

nm -C blib/arch/auto/XML/Xerces/Xerces.so:
00159a40 T _wrap_PerlCallbackHandler_set_callback_obj
0016e1ac T PerlCallbackHandler::set_callback_obj(sv *)

nm blib/arch/auto/Handler/Handler.a:
< NO OUTPUT >

nm -C blib/arch/auto/Handler/Handler.a:
000000dc T PerlCallbackHandler::set_callback_obj(sv *)
         U PerlCallbackHandler::set_callback_obj(sv *)
         U PerlCallbackHandler::set_callback_obj(sv *)
         U PerlCallbackHandler::set_callback_obj(sv *)



For the case "fresh compiled" case:

nm blib/arch/auto/XML/Xerces/Xerces.so;
         U _ZN19PerlCallbackHandler16set_callback_objEP2sv
000d3060 T _wrap_PerlCallbackHandler_set_callback_obj

nm -C blib/arch/auto/XML/Xerces/Xerces.so:
         U PerlCallbackHandler::set_callback_obj(sv*)
000d3060 T _wrap_PerlCallbackHandler_set_callback_obj

[ The outcome for "nm blib/arch/auto/Handler/Handler.a" and "nm -C
  blib/arch/auto/Handler/Handler.a" was identical to the one for the
  "pre-compiled Debian binaries" case above. ]


Clearly, in both cases I'm getting something quite different from what
you're getting.

Incidentally, I forgot to mention earlier that for the case in which I
compiled my own Xerces libraries, I repeated the linking step with the
additional linker flag "--export-all-symbols".  This seems to have had
no effect on the errors I get during make test.

Also, I should note that for both cases the corresponding DOMCount
executables seem to work OK.

I did not try "perl samples/DOMCount.pl samples/personal.xml" because
I get the same "undefined symbol" error as listed above from *any*
Perl script (such as samples/DOMCount.pl) with the line "use
XML::Xerces;", including

  # minimal_xerces.pl
  use lib 'blib/lib';
  use lib 'blib/arch';
  use XML::Xerces;
  1;
  __END__

I.e. the problem surfaces already at the time of loading the module,
not at the time of using it.

Thanks,

kj
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.