Hi Jason,

Thanks immensely for your help! I was able to get the perl modules
compiled, tested, and installed. I also had to make some other
modifications to the compile lines (via editting the makefiles) which I'd
like to document for reference:

On 24 Jul 2001, Jason E. Stewart wrote:

> "George C. Jackson" <[EMAIL PROTECTED]> writes:
> 
> > I hope someone here can help with the errors I'm getting errors during
> > make. I was able to successfully compile/install fine on a
> > Solaris7/gcc-2.95/perl-5.005_3 system
> 
> Thats a useful data point, thanks.
> 

I can also confirm a successful install on Solaris7/gcc-2.95/perl-5.004_1
on a machine that was upgraded from Solaris 2.6. 

> > PerlExceptionHandler.cpp:57: `PL_sv_undef' undeclared (first use this function)
> > PerlExceptionHandler.cpp:57: (Each undeclared identifier is reported only once
> > PerlExceptionHandler.cpp:57: for each function it appears in.)
> > make[1]: *** [PerlExceptionHandler.o] Error 1
> 
> Easy problem to fix. perl 5.004 doesn't know about PERL_POLLUTE, so it
> doesn't prefix any of it's internal symbols with 'PL_', this switch
> happened in 5.005. Try adding a -DPL_sv_undef=sv_undef to the compile
> line, or just change the 6 occurrences in that file by hand.
> 

Yep, and I also had to compensate for other symbols by using:

CCCDLFLAGS = -fPIC -DPL_sv_undef=sv_undef -DPL_na=na -DPL_sv_yes=sv_yes

in the makefiles after running perl Makefile.PL (I'll learn to use the
latest version of perl one of these days :). Incidentally, I changed -fpic
to -fPIC after getting this error during make:

LD_RUN_PATH="/usr/local/binary_installs/xerces-c1_5_0-SolCC/lib" gcc -o 
blib/arch/auto/XML/Xerces/Xerces.so 
-R/usr/local/binary_installs/xerces-c1_5_0-SolCC/lib -G Xerces.o 
Handler/PerlContentCallbackHandler.o Handler/PerlErrorCallbackHandler.o 
Handler/PerlDocumentCallbackHandler.o Handler/PerlExceptionHandler.o    
-L/usr/local/binary_installs/xerces-c1_5_0-SolCC/lib -lxerces-c1_5
ld: fatal: too many symbols require `small' PIC references:
        have 4100, maximum 2048 -- recompile some modules -K PIC.
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/XML/Xerces/Xerces.so] Error 1

> > I had to edit the Makefile.PL to include my /usr/local/include/g++-3
> > headers and also added -DHAS_BOOL to my cflags.
> 
> Yes, the HAS_BOOL is known to be needed for Solaris. As for g++-3
> headers, I'm not sure how else to allow users to add extra include
> dirs. 
> 

No problem, INCLUDE lines can always be editted. I learned about the
HAS_BOOL from another post to the list.

After a successful compile, however, none of the tests worked and the
samples gave errors. Again, with info from another post, I realized that I
really needed to compile Xerces-C from source, pointing out that following
the build instructions *exactly* and using

./runConfigure -psolaris -cgcc -xg++

really helped. The -xg++ seemed to be necessary to make sure the gnu stuff
was being used and not solaris' c++.

> Thanks!
> jas.

And thank you, everything works beautifully!

George Jackson
Sun SysAdmin


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

Reply via email to