The xerces build does not create a xerces.dll.  Here is the listing for the lib directory:
[EMAIL PROTECTED] ~/download/xerces-c-src_2_3_0/lib
$ ls -alF
total 13765
drwxrwxrwx+   2 sl492591 mkpasswd     4096 Jul  1 16:45 ./
drwxr-xr-x+  12 sl492591 mkpasswd     4096 Jul  1 15:41 ../
-rwxrwxrwx    1 sl492591 mkpasswd  4506139 Jul  1 16:45 cygxerces-c23.dll*
lrwxrwxrwx    1 sl492591 mkpasswd      207 Jul  1 16:45 libxerces-c.dll.a -> /cygdrive/c/download/xerces-c-src_2_3_0/l/libxerces-c2_3_0.dll.a
-rw-rw-rw-    1 sl492591 mkpasswd   586720 Jul  1 16:44 libxerces-c23.def
-rw-rw-rw-    1 sl492591 mkpasswd  7265276 Jul  1 16:39 libxerces-c23.dll.a
-rw-rw-rw-    1 sl492591 mkpasswd  1736299 Jul  1 16:45 libxerces-c23.map
lrwxrwxrwx    1 sl492591 mkpasswd      197 Jul  1 16:45 libxerces-c2_3_0.dll.a -> /cygdrive/c/download/xerces-c-src_2_0/lib/libxerces-c23.dll.a

I'll add a link for Xerces.dll.  Should I link it to cygxerces-c23.dll or libxerces-c2_3_0.dll.a ?  Or would it best to install the win32 binary and add its lib dir to the path?

Thanks,

Stephen



Jason E. Stewart wrote:
Stephen Long <[EMAIL PROTECTED]> writes:

  
Thanks for the reply.  I re-installed xerces-c-src_2_3_0 to get the
config.status file, then attempted to install XML-Xerces-2.3.0-0.  The
make output is attached.

The note on line 6 probably results from the $LIBXERCES assignment on
line 203 of Makefile.PL -- the Unix build does not create this file
but I believe the Win32 binary installation does install this file.
    

  
Note (probably harmless): No library found for -lxerces-c
    

You're still getting this error, it seems that Perl cannot locate your
xerces dll, which might be causing all the other problems.

  
gcc -shared -o  Xerces.dll -Wl,--out-implib=libXerces.dll.a -Wl,--export-all-symbols -Wl,--enable-auto-import -Wl,--stack,8388608 \
-s -L/usr/local/lib Xerces.o  blib/arch/auto/Handler/Handler.a /usr/lib/perl5/5.8.0/cygwin-multi-64int/CORE/libperl.dll.a -lpthread -L/cygdrive/c/download/xerces-c-src_2_3_0/lib
Error: 0-bit reloc in dll
Creating library file: libXerces.dll.a
Xerces.o(.text+0x1a4f3):Xerces.C: undefined reference to `xercesc_2_3::XMLString::transcode(unsigned short const*)'
    

the linker is not finding your xerces dll...

  
Xerces.o(.text+0x1b4c0):Xerces.C: undefined reference to `operator new[](unsigned)'
Xerces.o(.text+0x1b547):Xerces.C: undefined reference to `operator delete[](void*)'
    

These are wierder, but I would solve the above problem first.

  
Xerces.o(.text+0x328c4):Xerces.C: undefined reference to `___cxa_begin_catch'
Xerces.o(.text+0x32a53):Xerces.C: undefined reference to `___cxa_end_catch'
    

likewise...

  
blib/arch/auto/Handler/Handler.a(PerlErrorCallbackHandler.o)(.text+0x129):PerlErrorCallbackHandler.cpp: undefined reference to `operator delete(void*)'
    

This seems like something wrong in the list of libraries to the compiler???

Perhaps someone with more experience on Windows/Cygwin could weigh in
on this.

Cheers,
jas.


  

-- 
Stephen
-------
Stephen Long
Fusion Senior QA Analyst
FedEx, IT Services
350 Spectrum Loop
Colorado Springs, CO  80921
Office:  (719) 484-2368
Fax:     (719) 484-2419
Email:   [EMAIL PROTECTED]
Cube:    EN332

Reply via email to