You are viewing a plain text version of this content. The canonical link for it is here.
Posted to p-dev@xerces.apache.org by "Steven N. Hirsch" <hi...@btv.ibm.com> on 2001/11/05 18:18:24 UTC

Build problem on RH 6.2

Hi,

I've spent a frustrating few days attempting to build XML-Xerces on both
x86 Linux (RedHat 6.2) and AIX 4.3.3 (I'll cover the latter in a separate
post.)

I tried building XML-Xerces-1.5.2_0 for Perl 5.6.0 against
xerces-c-src1_5_2.  Although there were no blatant compile problems,
DOMException.t dumps core:

PERL_DL_NONLAZY=1 /afs/btv/u/hirschs/Linux/bin/perl -Iblib/arch -Iblib/lib
-I/afs/btv/u/hirschs/local/lib/perl5/5.6.0/i686-linux
-I/afs/btv/u/hirschs/local/lib/perl5/5.6.0 -e 'use Test::Harness
qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
t/AttributeList.....dubious                                                  
        Test returned status 0 (wstat 139, 0x8b)
        test program seems to have generated a core
DIED. FAILED tests 1-8
        Failed 8/8 tests, 0.00% okay
t/Attributes........dubious                                                  
        Test returned status 0 (wstat 139, 0x8b)
Undefined subroutine &Test::Harness::WCOREDUMP called at
/afs/btv/u/hirschs/local/lib/perl5/5.6.0/Test/Harness.pm line 334.
make: *** [test_dynamic] Error 255

(Is WCOREDUMP a new feature for 5.6.1?  AFAIK, there's nothing wrong with
my local Perl install.)

If I build with Perl 5.6.1, it gets through all the tests, but with 100%
of them failing (they all dump core.)

I have tried compiling with both the stock egcs-2.91.66 compiler and a
newer GNU gcc-2.95.3.  Both fail in a similar manner.

On my personal RH7.1 system (gcc-2.96-something from RH), things seem fine
and all tests pass.  I'm not a C++ guru, but am wondering if Xerces.C
relies upon cutting edge exception handling support?  

Upgrading my installation at work is not an option at this time,
unfortunately.  Does anyone have words of wisdom for creating a workable
package on 6.2?  

Steve

-- 
----------------------------------------------------------------
Steven N. Hirsch       tie-line: 446-6557     ext: 802-769-6557

Staff Engineer                     Methodology Integration Team
ASIC Product Development           IBM Microelectronics
----------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org


Re: Build problem on RH 6.2

Posted by "Steven N. Hirsch" <hi...@btv.ibm.com>.
On Tue, 6 Nov 2001, Steven N. Hirsch wrote:

> On 5 Nov 2001, Jason E. Stewart wrote:
> 
> > "Steven N. Hirsch" <hi...@btv.ibm.com> writes:
> > 
> > > No, it never makes it to the other tests due to the missing WCOREDUMP
> > > thingie..
> > 
> > ??? That's way too wierd. Sounds like something is messed
> > up. I found this on google:
> > 
> >   You have a wait.ph file generated by perl h2ph utility.  It does not
> >   define a WCOREDUMP function. That's probably an error.  If a
> >   DBD::Oracle test fails then you will probably see a message from
> >   Test::Harness about WCOREDUMP being undefined. You can either ignore
> >   it or try to fix your wait.ph file. The message does not reflect the
> >   cause of the test failure, it's just a problem interpreting the
> >   failure.
> > 
> > That isn't going to help you getting it running, though. I do have
> > access to a RH6.2 machine, let me give it a shot. You may have to
> > compile your own version of perl to get it working...
> 
> I have.  RedHat 6.2 shipped with Perl 5.00504.  I have since built and
> upgraded to 5.6.0.
> 
> I will dig into the issue of WCOREDUMP.  I'd already come to the
> conclusion that h2ph had somehow blown it...

Jason,

Some success!  I hacked the Harness.pm module with 5.6.0 to resemble that
in the newer 5.6.1 Perl, which allowed all the tests to execute.  At that
point, I observed a 100% failure with 5.6.0 (just as reported previously
for 5.6.1)

A little poking around with the debugger revealed that it was dumping core
during module "boot".  The xerces-c library calls StringIConv to upcase
the string 'UTF-8'.  Eventually, this calls 'towupper()' in the system
runtime library, which cheerfully sends a sig 11.

After some headscratching over the manpage, I noticed that towupper() is
dependent upon LC_CTYPE.  With this clue, I tried setting LANG=en_US in
the environment and BINGO, all tests pass.  This must be an issue with the
older C library, as I use the default (nothing set for LOCALE, implying
LANG=C) on my 7.1 system where the problem is not seen.  To back this up,
I've confirmed that explicitly setting LANG=C causes the same 100%
failure on RH6.2 (glibc-2.1.3) - quite broken, no?

So, you may want to check for environment settings on older RedHat systems
to avoid others falling into this problem.  

Now, on to the AIX issues....

Steve

-- 
----------------------------------------------------------------
Steven N. Hirsch       tie-line: 446-6557     ext: 802-769-6557

Staff Engineer                     Methodology Integration Team
ASIC Product Development           IBM Microelectronics
----------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org


Re: Build problem on RH 6.2

Posted by "Steven N. Hirsch" <hi...@btv.ibm.com>.
On 5 Nov 2001, Jason E. Stewart wrote:

> "Steven N. Hirsch" <hi...@btv.ibm.com> writes:
> 
> > No, it never makes it to the other tests due to the missing WCOREDUMP
> > thingie..
> 
> ??? That's way too wierd. Sounds like something is messed
> up. I found this on google:
> 
>   You have a wait.ph file generated by perl h2ph utility.  It does not
>   define a WCOREDUMP function. That's probably an error.  If a
>   DBD::Oracle test fails then you will probably see a message from
>   Test::Harness about WCOREDUMP being undefined. You can either ignore
>   it or try to fix your wait.ph file. The message does not reflect the
>   cause of the test failure, it's just a problem interpreting the
>   failure.
> 
> That isn't going to help you getting it running, though. I do have
> access to a RH6.2 machine, let me give it a shot. You may have to
> compile your own version of perl to get it working...

I have.  RedHat 6.2 shipped with Perl 5.00504.  I have since built and
upgraded to 5.6.0.

I will dig into the issue of WCOREDUMP.  I'd already come to the
conclusion that h2ph had somehow blown it...

Steve

-- 
----------------------------------------------------------------
Steven N. Hirsch       tie-line: 446-6557     ext: 802-769-6557

Staff Engineer                     Methodology Integration Team
ASIC Product Development           IBM Microelectronics
----------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org


Re: Build problem on RH 6.2

Posted by "Jason E. Stewart" <ja...@openinformatics.com>.
"Steven N. Hirsch" <hi...@btv.ibm.com> writes:

> <sigh> I wish it were that simple.  I _did_ build the Xerces-C
> library from source using the same compiler that I attempted to
> build the extension under.

Bummer.

In the past RH7 has been the one that didn't work because of gcc
bugs. It's odd that it's the other way around.

> > Huh. Interesting. So all other tests pass?
> 
> No, it never makes it to the other tests due to the missing WCOREDUMP
> thingie..

??? That's way too wierd. Sounds like something is messed
up. I found this on google:

  You have a wait.ph file generated by perl h2ph utility.  It does not
  define a WCOREDUMP function. That's probably an error.  If a
  DBD::Oracle test fails then you will probably see a message from
  Test::Harness about WCOREDUMP being undefined. You can either ignore
  it or try to fix your wait.ph file. The message does not reflect the
  cause of the test failure, it's just a problem interpreting the
  failure.

That isn't going to help you getting it running, though. I do have
access to a RH6.2 machine, let me give it a shot. You may have to
compile your own version of perl to get it working...

jas.

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org


Re: Build problem on RH 6.2

Posted by "Steven N. Hirsch" <hi...@btv.ibm.com>.
On 5 Nov 2001, Jason E. Stewart wrote:

> "Steven N. Hirsch" <hi...@btv.ibm.com> writes:
> 
> > On my personal RH7.1 system (gcc-2.96-something from RH), things
> > seem fine and all tests pass.  
> 
> Hey, that's great news! Thanks for the info. 

> > I've spent a frustrating few days attempting to build XML-Xerces on both
> > x86 Linux (RedHat 6.2) and AIX 4.3.3 (I'll cover the latter in a separate
> > post.)
> 
> > Upgrading my installation at work is not an option at this time,
> > unfortunately.  Does anyone have words of wisdom for creating a workable
> > package on 6.2?  
> 
> Bummer. I sorry that you've had trouble with this. I do as much
> testing as I can given the limited machines/compilers that I have
> access to. 
> 
> It's kind of a pain that SourceForge doesn't have linux machines with
> RedHat installed (they all have debian which is what I have
> personally).
> 
> My guess is that you are using the Xerces-C binary for linux, and that
> it was built for RH7 systems, and is incompatible with the stuff on
> RH6. 

<sigh>  I wish it were that simple.  I _did_ build the Xerces-C library
from source using the same compiler that I attempted to build the
extension under.


> > I tried building XML-Xerces-1.5.2_0 for Perl 5.6.0 against
> > xerces-c-src1_5_2.  Although there were no blatant compile problems,
> > DOMException.t dumps core:
> 
> Huh. Interesting. So all other tests pass?

No, it never makes it to the other tests due to the missing WCOREDUMP
thingie..

> No, you'll notice that it's being called from within Test::Harness in
> your 5.6.0 installation. 
> 
> In 5.6.0 they have:
> 
> 	$ret = WCOREDUMP($st);
> 
> In 5.6.1 they made it:
> 
>         my $ret = defined &WCOREDUMP ? WCOREDUMP($st) : $st & 0200;
> 
> All it does is indicate that the test coredumped. So you're not
> missing anything that I know of.

Looks like 'WCOREDUMP' is MIA from my 5.6.0 build.  I'll look into it.


> > If I build with Perl 5.6.1, it gets through all the tests, but with 100%
> > of them failing (they all dump core.)
> 
> Strange that one fails only one test and the other fails all tests.

It wasn't running anything after the first core dump, but some did pass
prior to that.

> > I have tried compiling with both the stock egcs-2.91.66 compiler and a
> > newer GNU gcc-2.95.3.  Both fail in a similar manner.
> 
> > I'm not a C++ guru, but am wondering if Xerces.C relies upon cutting
> > edge exception handling support?
> 
> Neither am I unfortunately. Yes, I use exceptions, but they are the
> exact same ones used by Xerces-C, which don't look cutting edge to
> me:
> 
> try { some_func() }
> catch (this) {}
> catch (that) {}
> catch (...) {} // the rest
> 
> If it isn't the binary build issue, I don't know what it is.
> jas.

Ok, so I'm wondering if anyone else reading this list has built under
RH6.2 without problems.

Thanks for the response!

Steve

-- 
----------------------------------------------------------------
Steven N. Hirsch       tie-line: 446-6557     ext: 802-769-6557

Staff Engineer                     Methodology Integration Team
ASIC Product Development           IBM Microelectronics
----------------------------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org


Re: Build problem on RH 6.2

Posted by "Jason E. Stewart" <ja...@openinformatics.com>.
"Steven N. Hirsch" <hi...@btv.ibm.com> writes:

> On my personal RH7.1 system (gcc-2.96-something from RH), things
> seem fine and all tests pass.  

Hey, that's great news! Thanks for the info. 

> I've spent a frustrating few days attempting to build XML-Xerces on both
> x86 Linux (RedHat 6.2) and AIX 4.3.3 (I'll cover the latter in a separate
> post.)

> Upgrading my installation at work is not an option at this time,
> unfortunately.  Does anyone have words of wisdom for creating a workable
> package on 6.2?  

Bummer. I sorry that you've had trouble with this. I do as much
testing as I can given the limited machines/compilers that I have
access to. 

It's kind of a pain that SourceForge doesn't have linux machines with
RedHat installed (they all have debian which is what I have
personally).

My guess is that you are using the Xerces-C binary for linux, and that
it was built for RH7 systems, and is incompatible with the stuff on
RH6. 

At the moment I suggest that everyone build Xerces-C from source to
remove this as a problem. If this is not that case for you, I'm not
sure what to say.

> I tried building XML-Xerces-1.5.2_0 for Perl 5.6.0 against
> xerces-c-src1_5_2.  Although there were no blatant compile problems,
> DOMException.t dumps core:

Huh. Interesting. So all other tests pass?

> PERL_DL_NONLAZY=1 /afs/btv/u/hirschs/Linux/bin/perl -Iblib/arch -Iblib/lib
> -I/afs/btv/u/hirschs/local/lib/perl5/5.6.0/i686-linux
> -I/afs/btv/u/hirschs/local/lib/perl5/5.6.0 -e 'use Test::Harness
> qw(&runtests $verbose); $verbose=0; runtests @ARGV;' t/*.t
> t/AttributeList.....dubious                                                  
>         Test returned status 0 (wstat 139, 0x8b)
>         test program seems to have generated a core
> DIED. FAILED tests 1-8
>         Failed 8/8 tests, 0.00% okay
> t/Attributes........dubious                                                  
>         Test returned status 0 (wstat 139, 0x8b)
> Undefined subroutine &Test::Harness::WCOREDUMP called at
> /afs/btv/u/hirschs/local/lib/perl5/5.6.0/Test/Harness.pm line 334.
> make: *** [test_dynamic] Error 255
> 
> (Is WCOREDUMP a new feature for 5.6.1?  AFAIK, there's nothing wrong with
> my local Perl install.)

No, you'll notice that it's being called from within Test::Harness in
your 5.6.0 installation. 

In 5.6.0 they have:

	$ret = WCOREDUMP($st);

In 5.6.1 they made it:

        my $ret = defined &WCOREDUMP ? WCOREDUMP($st) : $st & 0200;

All it does is indicate that the test coredumped. So you're not
missing anything that I know of.

> If I build with Perl 5.6.1, it gets through all the tests, but with 100%
> of them failing (they all dump core.)

Strange that one fails only one test and the other fails all tests.

> I have tried compiling with both the stock egcs-2.91.66 compiler and a
> newer GNU gcc-2.95.3.  Both fail in a similar manner.

> I'm not a C++ guru, but am wondering if Xerces.C relies upon cutting
> edge exception handling support?

Neither am I unfortunately. Yes, I use exceptions, but they are the
exact same ones used by Xerces-C, which don't look cutting edge to
me:

try { some_func() }
catch (this) {}
catch (that) {}
catch (...) {} // the rest

If it isn't the binary build issue, I don't know what it is.
jas.

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-p-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-p-dev-help@xml.apache.org