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]