This is long. Sorry. I thought it best to give as much information as I could.


> > on AIX. It turns out that the Xerces.C file doesn't compile under
> > AIX4.3.2 using the xlc compiler. Are there any plans to get AIX onto
> > the supported list?
>
> Excellent! I'm glad that someone has made the effort to try this on
> AIX. First off, I would suggest upgrading to 1.5.3, there is a big

I grabbed the 1.5.3 package but it hit a problem pretty much immediately. 
Running perl Makefile.PL just stopped. Removing the local-isation of STDOUT 
and STDERR from before the call to 

($lib) = ExtUtils::Liblist::ext(MM->new(),$LIBS);

allowed me to see this error message:

===
> perl Makefile.PL
Using XERCES_LIB = /afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib
Using XERCES_INCLUDE = 
/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/include
Checking to see if libxerces is in your library path...Checking if your kit 
is complete...
Looks good
Warning: Guessing NAME [XML-Xerces] from current directory name.
Writing Makefile for XML::Xerces::DOMParse
Writing Makefile for Handler
Undefined subroutine &ExtUtils::Liblist::ext called at Makefile.PL line 66.
===

I'm using a hand compiled Perl-5.6.1 which I built just last week. Chances 
are I'm missing a package which everyone takes for granted, although I do 
have ExtUtils::LibList - that comes with the 5.6.1 distribution as standard.

I know my XERCESCROOT is correct, and I'm using precompiled binaries for that 
package, so I took the check out of Makefile.PL and pressed on.

I got rid of the DEBIAN definition from the CFLAGS as suggested. There wasn't 
a BOOL one. The compile lines looked fairly sensible then.

And they worked, or appeared to. The link line then failed:

===
LD_RUN_PATH="/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib" ld  
-bhalt:4 -bM:SRE 
-bI:/afs/ssd/projects/tools/perl/perl-5.6.1/lib/5.6.1/aix/CORE/perl.exp 
-bE:Xerces.exp -b noentry -lC -lc -L/usr/local/lib Xerces.o 
Handler/PerlContentCallbackHandler.o Handler/PerlErrorCallbackHandler.o 
Handler/PerlDocumentCallbackHandler.o Handler/PerlExceptionHandler.o  -o 
blib/arch/auto/XML/Xerces/Xerces.so   
-L/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib -lxerces-c1_5
ld: 0706-005 Cannot find or open file: Handler/PerlContentCallbackHandler.o
        ld:open(): A file or directory in the path name does not exist.
ld: 0706-005 Cannot find or open file: Handler/PerlErrorCallbackHandler.o
        ld:open(): A file or directory in the path name does not exist.
ld: 0706-005 Cannot find or open file: Handler/PerlDocumentCallbackHandler.o
        ld:open(): A file or directory in the path name does not exist.
ld: 0706-005 Cannot find or open file: Handler/PerlExceptionHandler.o
        ld:open(): A file or directory in the path name does not exist.
make: 1254-004 The error code from the last command is 255.
 
 
Stop.
===

It turns out that the objects are in the current directory, not the Handler 
one. That's reasonable (although unexpected) because the compile lines look, 
for example, like this:

===
cc -c -I. -IHandler 
-I/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/include -D_REENTRANT -O    
-DVERSION=\"1.5.3\"  -DXS_VERSION=\"1.5.3\"  
-I/afs/ssd/projects/tools/perl/perl-5.6.1/lib/5.6.1/aix/CORE  
Handler/PerlExceptionHandler.cpp
===

i.e. no -o to define exactly where the output object should go.

I moved the objects to the Handler directory then reran the make. This time 
the link blew up with:

===
LD_RUN_PATH="/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib" ld  
-bhalt:4 -bM:SRE 
-bI:/afs/ssd/projects/tools/perl/perl-5.6.1/lib/5.6.1/aix/CORE/perl.exp 
-bE:Xerces.exp -b noentry -lC -lc -L/usr/local/lib Xerces.o 
Handler/PerlContentCallbackHandler.o Handler/PerlErrorCallbackHandler.o 
Handler/PerlDocumentCallbackHandler.o Handler/PerlExceptionHandler.o  -o 
blib/arch/auto/XML/Xerces/Xerces.so   
-L/afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib -lxerces-c1_5
ld: 0711-224 WARNING: Duplicate symbol: 
__vft20NameIdPoolEnumeratorXT14DTDElementDecl_13XMLEnumeratorXT14DTDElementDecl_
ld: 0711-224 WARNING: Duplicate symbol: 
__vft20NameIdPoolEnumeratorXT15XMLNotationDecl_13XMLEnumeratorXT15XMLNotationDecl_
ld: 0711-224 WARNING: Duplicate symbol: 
__vft29RefHash2KeysTableOfEnumeratorXT12SchemaAttDef_13XMLEnumeratorXT12SchemaAttDef_ld:
 
0711-224 WARNING: Duplicate symbol: 
__vft28RefHash3KeysIdPoolEnumeratorXT17SchemaElementDecl_13XMLEnumeratorXT17SchemaElementDecl_
ld: 0711-224 WARNING: Duplicate symbol: 
__vft20NameIdPoolEnumeratorXT13DTDEntityDecl_13XMLEnumeratorXT13DTDEntityDecl_
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-317 ERROR: Undefined symbol: .cloneNode__8DOM_NodeCFc
ld: 0711-317 ERROR: Undefined symbol: 
.createNodeIterator__12DOM_DocumentF8DOM_NodeUlP14DOM_NodeFilterc
ld: 0711-317 ERROR: Undefined symbol: 
.createTreeWalker__12DOM_DocumentF8DOM_NodeUlP14DOM_NodeFilterc
ld: 0711-317 ERROR: Undefined symbol: .importNode__12DOM_DocumentFRC8DOM_Nodec
ld: 0711-317 ERROR: Undefined symbol: .collapse__9DOM_RangeFc
ld: 0711-317 ERROR: Undefined symbol: 
.__ct__17MemBufInputSourceFCPCUcCUiCPCcCc
ld: 0711-317 ERROR: Undefined symbol: .setDoNamespaces__9SAXParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setDoSchema__9SAXParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setExitOnFirstFatalError__9SAXParserFCc
ld: 0711-317 ERROR: Undefined symbol: 
.setValidationConstraintFatal__9SAXParserFCc
ld: 0711-317 ERROR: Undefined symbol: 
.parseFirst__9SAXParserFCPCUsR13XMLPScanTokenCc
ld: 0711-317 ERROR: Undefined symbol: .setDoValidation__9SAXParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setDoNamespaces__9DOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setExitOnFirstFatalError__9DOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: 
.setValidationConstraintFatal__9DOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setDoSchema__9DOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .parse__9DOMParserFRC11InputSourceCc
ld: 0711-317 ERROR: Undefined symbol: .parse__9DOMParserFCPCcCc
ld: 0711-317 ERROR: Undefined symbol: 
.parseFirst__9DOMParserFCPCUsR13XMLPScanTokenCc
ld: 0711-317 ERROR: Undefined symbol: 
.parseFirst__9DOMParserFCPCcR13XMLPScanTokenCc
ld: 0711-317 ERROR: Undefined symbol: 
.parseFirst__9DOMParserFRC11InputSourceR13XMLPScanTokenCc
ld: 0711-317 ERROR: Undefined symbol: .setDoValidation__9DOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setDoNamespaces__10IDOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: 
.setExitOnFirstFatalError__10IDOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: 
.setValidationConstraintFatal__10IDOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .setDoSchema__10IDOMParserFCc
ld: 0711-317 ERROR: Undefined symbol: .parse__10IDOMParserFRC11InputSourceCc
ld: 0711-317 ERROR: Undefined symbol: 
.parseFirst__10IDOMParserFCPCUsR13XMLPScanTokenCc
ld: 0711-317 ERROR: Undefined symbol: .setDoValidation__10IDOMParserFCc
make: 1254-004 The error code from the last command is 8.
 
 
Stop.
===

Excuse the formatting.

At this point I start floundering a bit. :-} I'm not sure what the 
LD_RUN_PATH is, but if that's an equivalent of LD_LIBRARY_PATH on Linux, on 
AIX that should be LIBPATH. I tried changing it in the link line but got the 
same errors.

I do have the xerces library expected:

===
> ls -l /afs/ssd/projects/tools/perl/xerces-c1_5_0-AIX43/lib
total 8462
-rwx------   1 fountai  staff    4331524 Jun 17 01:42 libxerces-c1_5.a
===

And there I ground to a halt. Any advice appreciated.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to