Re: Recommended GCC version?

2008-06-27 Thread Kelly O'Hair


Source that compiles with many different compilers is generally a
good thing, assuming the code hasn't been ifdef'd to death.
But successful compilation is just part of the picture.

Anyone delivering built openjdk bits,
needs to have tested those bits and that they understand the
quality issues that a built jdk has on the C/C++ compiler used.
It would be impossible for any one group to guarantee that every
change is buildable with every system & compiler combination,
much less guarantee it runs perfectly in all cases.
But I think that's understood.

I see no reason to block changes that allow our openjdk source to be built
with any reasonable compiler, and even well documented workarounds
could even be justified. But we may want some reasonable limitations
so that the code stays maintainable.

-kto

Andrew Haley wrote:

David Holmes - Sun Microsystems wrote:

Andrew,

Andrew Haley said the following on 06/20/08 20:55:

The changes we had to make to build OpenJDK with gcc 4.3 were to fix
nonstandard C++ code and to turn off -Werror because gcc 4.3 is much
more fulsome in its warnings.  Rather than insist on using an older
compiler, we would probably be better off fixing the code that
generates the warnings.

It isn't compilation that is the issue (we should certainly fix the
OpenJDK code to compile cleanly on a standards-compliant compiler) but
the actual runtime behaviour of the compiled code. WE don't "recommend"
the old compiler because it allows old sloppy code to get through, but
because we've already uncovered the bugs that affect us at runtime,
through literally years of use and testing.


Sure.  I was counselling against the (oft-seen) practice of using an old
compiler because the code doesn't run on the new one.

Andrew.


Re: Recommended GCC version?

2008-06-23 Thread Andrew Haley
David Holmes - Sun Microsystems wrote:
> Andrew,
> 
> Andrew Haley said the following on 06/20/08 20:55:
>> The changes we had to make to build OpenJDK with gcc 4.3 were to fix
>> nonstandard C++ code and to turn off -Werror because gcc 4.3 is much
>> more fulsome in its warnings.  Rather than insist on using an older
>> compiler, we would probably be better off fixing the code that
>> generates the warnings.
> 
> It isn't compilation that is the issue (we should certainly fix the
> OpenJDK code to compile cleanly on a standards-compliant compiler) but
> the actual runtime behaviour of the compiled code. WE don't "recommend"
> the old compiler because it allows old sloppy code to get through, but
> because we've already uncovered the bugs that affect us at runtime,
> through literally years of use and testing.

Sure.  I was counselling against the (oft-seen) practice of using an old
compiler because the code doesn't run on the new one.

Andrew.


Re: Recommended GCC version?

2008-06-22 Thread David Holmes - Sun Microsystems

Andrew,

Andrew Haley said the following on 06/20/08 20:55:

The changes we had to make to build OpenJDK with gcc 4.3 were to fix
nonstandard C++ code and to turn off -Werror because gcc 4.3 is much
more fulsome in its warnings.  Rather than insist on using an older
compiler, we would probably be better off fixing the code that
generates the warnings.


It isn't compilation that is the issue (we should certainly fix the 
OpenJDK code to compile cleanly on a standards-compliant compiler) but 
the actual runtime behaviour of the compiled code. WE don't "recommend" 
the old compiler because it allows old sloppy code to get through, but 
because we've already uncovered the bugs that affect us at runtime, 
through literally years of use and testing.


David Holmes


Re: Recommended GCC version?

2008-06-20 Thread Martin Buchholz
Many code bases qualify as "compiler stress tests".
I once recommended that the gcc team use
XEmacs as a stress test because the source code's
unusual C/C++/Lisp style tended to tickle gcc bugs.
I fondly remember the old "C preprocessor fails when a
macro call contains a comment longer than 128 lines"
gcc bug.

Hotspot is an even better compiler stress test.
Again I recommend that the gcc team use it
as part of their testing cycle.

Martin

On Fri, Jun 20, 2008 at 3:55 AM, Andrew Haley <[EMAIL PROTECTED]> wrote:
> Erik Trimble wrote:
>
>> Consequently, it is very sensitive to bugs and changes in a compiler.
>> For large organizations (such as those managing a distro), it may make
>> sense to put in the effort to make sure their "standard" compiler works
>> with OpenJDK.   It is none too difficult for even such an org to use a
>> different compiler, though.
>
> I have a very bad feeling about this.  In the Bad Old Days when I
> worked in proprietary software, it was not uncommon that a code base
> would only compile correctly with a "blessed" compiler.  Eventually,
> that compiler would be withdrawn from support or we'd need to use a
> new compiler for some other reason, and we'd have to fix the bugs in
> our code base to work with the new compiler.  I now regard such
> antediluvian habits as grossly unprofessional, and I have no desire to
> go back to them.
>
>> For smaller companies and individuals, I think we (i.e. the community,
>> not just Sun), should _strongly_ encourage them to pick one of the
>> handful of "official" compilers, which are specified in the source
>> documentation.
>
> Quite a few Linux distros are downstream of Red Hat, and start with a
> compiler built from the Red Hat branch.  The RH compiler has built an
> entire Linux distro, after all.
>
> The changes we had to make to build OpenJDK with gcc 4.3 were to fix
> nonstandard C++ code and to turn off -Werror because gcc 4.3 is much
> more fulsome in its warnings.  Rather than insist on using an older
> compiler, we would probably be better off fixing the code that
> generates the warnings.
>
>> Certainly, we should pick compiler versions which are easily
>> available, and will remain so for several years.
>
> One of the great things about pushing HotSpot into the open is that it
> will be useful as a test for compilers.  If, as you say, it is so much
> harder to compile than virtually any other piece of software, it will
> be a great test.
>
> Andrew.
>
>


Re: Recommended GCC version?

2008-06-20 Thread Andrew Haley
Erik Trimble wrote:

> Consequently, it is very sensitive to bugs and changes in a compiler.
> For large organizations (such as those managing a distro), it may make
> sense to put in the effort to make sure their "standard" compiler works
> with OpenJDK.   It is none too difficult for even such an org to use a
> different compiler, though.

I have a very bad feeling about this.  In the Bad Old Days when I
worked in proprietary software, it was not uncommon that a code base
would only compile correctly with a "blessed" compiler.  Eventually,
that compiler would be withdrawn from support or we'd need to use a
new compiler for some other reason, and we'd have to fix the bugs in
our code base to work with the new compiler.  I now regard such
antediluvian habits as grossly unprofessional, and I have no desire to
go back to them.

> For smaller companies and individuals, I think we (i.e. the community,
> not just Sun), should _strongly_ encourage them to pick one of the
> handful of "official" compilers, which are specified in the source
> documentation.

Quite a few Linux distros are downstream of Red Hat, and start with a
compiler built from the Red Hat branch.  The RH compiler has built an
entire Linux distro, after all.

The changes we had to make to build OpenJDK with gcc 4.3 were to fix
nonstandard C++ code and to turn off -Werror because gcc 4.3 is much
more fulsome in its warnings.  Rather than insist on using an older
compiler, we would probably be better off fixing the code that
generates the warnings.

> Certainly, we should pick compiler versions which are easily
> available, and will remain so for several years.

One of the great things about pushing HotSpot into the open is that it
will be useful as a test for compilers.  If, as you say, it is so much
harder to compile than virtually any other piece of software, it will
be a great test.

Andrew.



Re: Recommended GCC version?

2008-06-20 Thread Andrew Haley
David Holmes - Sun Microsystems wrote:

> Andrew John Hughes said the following on 06/20/08 09:35:
>> I would hope one of the side effects of moving the JDK from a
>> proprietary to a community-based Free Software model would be that it
>> gets built, run and tested on a much wider range of platforms and
>> compilers.  This has already started to happen.
>
> Agreed - this is a good end goal. Meanwhile there are some
> practicalities to address.
>
>> The reality is that people aren't going to download and build a
>> specific copy of GCC just for OpenJDK, and distros will certainly want
>> it to build with the GCC they use for everything else.
>
> But are the Distros expecting/assuming that everything will work fine
> with their version of GCC?

Yes, of course, and if it doesn't then we'll either fix GCC or
OpenJDK.

> Who is expected to have done the testing?

There are two levels of testing here: that of the core package as
written, and that of a specific build, for which we need to do
regression testing.  There is nothing special about Java in this
regard: every package has the same problem.  The packagers of the
distros have been doing this stuff for many years.

> If something goes wrong who would be expected to fix it? Would the
> Distros patch the OpenJDK code with a workaround for their GCC
> version? Or would they grab a known working GCC version and rebuild
> using that?

We'll patch OpenJDK or GCC, depending on which is at fault.  We will
not build a special GCC in order to build OpenJDK; that would be a
pain and contrary to packaging guidelines.

> Right now the reality is that these alternate compiler versions have
> not undergone extensive testing for the OpenJDK.

I guess it all depends on what you mean by "extensive".  We've run all the
test suites to which we have access and a good deal of application testing
too.

> Over time that will hopefully change, but for now - caveat emptor!

Of course.  One of the problems here is that the distro packagers need
access to regression tests, some of which (AIUI) are still Sun
confidential.

Andrew.



Re: Recommended GCC version?

2008-06-19 Thread Martin Buchholz
When I worked on XEmacs, I acquired many systems
and compilers and used them to test XEmacs.
Quite aside from creating new ports that are actually useful
to users, each successful port is a Quality Improvement
exercise.  Each new port typically finds new bugs.
I recall one particularly insidious bug found only using
the 64-bit Irix compiler.

So I'm a big fan of at least porting to many compilers.
But the culture of JDK development is not quite right
to reap maximal Quality benefits from this activity.

Martin


Re: Recommended GCC version?

2008-06-19 Thread Jonathan Gibbons
It makes me wonder whether there should be a .deb/.rpm for *building*  
OpenJDK that causes all the right versions of all the necessary  
software to be installed.


-- Jon

On Jun 19, 2008, at 5:41 PM, David Herron wrote:


David Holmes - Sun Microsystems wrote:

Andrew,

Andrew John Hughes said the following on 06/20/08 09:35:

I would hope one of the side effects of moving the JDK from a
proprietary to a community-based Free Software model would be that  
it

gets built, run and tested on a much wider range of platforms and
compilers.  This has already started to happen.


Agreed - this is a good end goal. Meanwhile there are some  
practicalities to address.



The reality is that people aren't going to download and build a
specific copy of GCC just for OpenJDK, and distros will certainly  
want

it to build with the GCC they use for everything else.


But are the Distros expecting/assuming that everything will work  
fine with their version of GCC? Who is expected to have done the  
testing? If something goes wrong who would be expected to fix it?  
Would the Distros patch the OpenJDK code with a workaround for  
their GCC version? Or would they grab a known working GCC version  
and rebuild using that?


Right now the reality is that these alternate compiler versions  
have not undergone extensive testing for the OpenJDK. Over time  
that will hopefully change, but for now - caveat emptor!


Cheers,
David Holmes


Ubuntu ships with a default GCC but you can also install other GCC's

/usr/bin/gcc versus /usr/bin/gcc-4.2 versus /usr/bin/gcc-3.4 etc

It doesn't seem very onerous (on Ubuntu) for the end user to do  
this.  I'd think other distros also do this.  I have no idea how  
onerous it is for the distros to provide this service.


-- David Herron






Re: Recommended GCC version?

2008-06-19 Thread Andrew John Hughes
>
> > The reality is that people aren't going to download and build a
> > specific copy of GCC just for OpenJDK, and distros will certainly want
> > it to build with the GCC they use for everything else.
> >
>
>  But are the Distros expecting/assuming that everything will work fine with
> their version of GCC? Who is expected to have done the testing? If something
> goes wrong who would be expected to fix it? Would the Distros patch the
> OpenJDK code with a workaround for their GCC version? Or would they grab a
> known working GCC version and rebuild using that?
>

Patching is already being done; I believe IcedTea includes patches to
allow builds to be done on newer versions of GCC.  In the near future,
I guess most distros will ship with 4.3.  Fedora, I believe, has
already moved towards this.  Tests are being run using the jtreg test
cases and the Mauve test suite.  The version shipped with Fedora has
also just passed the TCK (congratulations to them, btw.)

>  Right now the reality is that these alternate compiler versions have not
> undergone extensive testing for the OpenJDK. Over time that will hopefully
> change, but for now - caveat emptor!
>

I agree it would be simpler to aim towards a minimum set of supported
compilers, but we should work together to decide what this is.  The
reason I replied to begin with is I occasionally get the implicit
feeling from some mails (if not intentional) that there is still a
separation between 'us' (sun) and 'them' (the community).  Clearly Sun
has made decisions about which compiler to support internally in the
past, but such decisions now need to involve the major players that
such support will affect.

I believe this is the distros; you will always get individual users
who try some bizarre configuration.  That's life ...

A final note should also be made that of course new architectures and
platforms, being targeted by the porting project, may require further
compiler versions.

>  Cheers,
>  David Holmes
>
>


-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8


Re: Recommended GCC version?

2008-06-19 Thread David Herron

David Holmes - Sun Microsystems wrote:

Andrew,

Andrew John Hughes said the following on 06/20/08 09:35:

I would hope one of the side effects of moving the JDK from a
proprietary to a community-based Free Software model would be that it
gets built, run and tested on a much wider range of platforms and
compilers.  This has already started to happen.


Agreed - this is a good end goal. Meanwhile there are some 
practicalities to address.



The reality is that people aren't going to download and build a
specific copy of GCC just for OpenJDK, and distros will certainly want
it to build with the GCC they use for everything else.


But are the Distros expecting/assuming that everything will work fine 
with their version of GCC? Who is expected to have done the testing? 
If something goes wrong who would be expected to fix it? Would the 
Distros patch the OpenJDK code with a workaround for their GCC 
version? Or would they grab a known working GCC version and rebuild 
using that?


Right now the reality is that these alternate compiler versions have 
not undergone extensive testing for the OpenJDK. Over time that will 
hopefully change, but for now - caveat emptor!


Cheers,
David Holmes


Ubuntu ships with a default GCC but you can also install other GCC's

/usr/bin/gcc versus /usr/bin/gcc-4.2 versus /usr/bin/gcc-3.4 etc

It doesn't seem very onerous (on Ubuntu) for the end user to do this.  
I'd think other distros also do this.  I have no idea how onerous it is 
for the distros to provide this service.


-- David Herron




Re: Recommended GCC version?

2008-06-19 Thread Erik Trimble

David Holmes - Sun Microsystems wrote:

Andrew,

Andrew John Hughes said the following on 06/20/08 09:35:

I would hope one of the side effects of moving the JDK from a
proprietary to a community-based Free Software model would be that it
gets built, run and tested on a much wider range of platforms and
compilers.  This has already started to happen.


Agreed - this is a good end goal. Meanwhile there are some 
practicalities to address.



The reality is that people aren't going to download and build a
specific copy of GCC just for OpenJDK, and distros will certainly want
it to build with the GCC they use for everything else.


But are the Distros expecting/assuming that everything will work fine 
with their version of GCC? Who is expected to have done the testing? 
If something goes wrong who would be expected to fix it? Would the 
Distros patch the OpenJDK code with a workaround for their GCC 
version? Or would they grab a known working GCC version and rebuild 
using that?


Right now the reality is that these alternate compiler versions have 
not undergone extensive testing for the OpenJDK. Over time that will 
hopefully change, but for now - caveat emptor!


Cheers,
David Holmes

While what Andrew says is true to a certain extent, I think it behooves 
us to act as guides. Hotspot in particular is a _very_ complex piece of 
code, and exercises (let's be honest, _stresses) a compiler far more 
than virtually any other piece of software commonly available (the Xorg 
stuff is probably the only comparable one in a standard Linux distro).   
Consequently, it is very sensitive to bugs and changes in a compiler. 

For large organizations (such as those managing a distro), it may make 
sense to put in the effort to make sure their "standard" compiler works 
with OpenJDK.   It is none too difficult for even such an org to use a 
different compiler, though.


For smaller companies and individuals, I think we (i.e. the community, 
not just Sun), should _strongly_ encourage them to pick one of the 
handful of "official" compilers, which are specified in the source 
documentation.   Downloading the appropriate compiler is trivial these 
days (via Yum or apt-get), and it avoids a whole rash of problems.   
Otherwise, folks get bogged down in trivial build problems (which, may 
turn out to be non-trivial), rather than doing what they were intending 
to do with the OpenJDK (which, is almost certainly not "adding support 
for compiler X.Y.Z").


Certainly, we should pick compiler versions which are easily available, 
and will remain so for several years.



While I love free software (in all its incarnations), one of the 
problems with running a large project is trying to "herd cats" - that 
is, setting appropriate boundaries and encouraging everyone to work 
within those boundaries, rather than just a willy-nilly free-for-all.   
In areas where it fruitful to push a boundary, the community should 
encourage it. However, there needs to be some social pressure in a 
community to discourage people from doing what I call the 
"look-at-me-I'm-cool" hack - that is, something that looks neat and may 
have been technically difficult or challenging, but really isn't useful 
(and, in many cases, carries a burden of support by the community).  
There is a non-zero cost to adding support to a codebase for any new 
feature. What the community needs to do is say that "Doing XYZ costs 
more than it is worth to community, so we will NOT accept XYZ". 



While this originally started out as a discussion around GCC, it applies 
to the other primary compilers currently used, i.e. SunStudio and Visual 
Studio.  I've run in considerable problems by applying a new Service 
pack to a Visual Studio 2003 (or, previously, VC 6), as not only 
bugfixes but behavior modifications are installed.  Running down those 
differences is a HUGE timesink.  One which I think we should avoid if at 
all possible.


Sometimes Freedom means you need to give up something to get something 
else.  In this case, I think the tradeoff is unlimited flexibility (use 
whatever compiler you want) for maintainability.  As I don't see any 
real benefit not easily obtainable otherwise by allowing many different 
compiler versions, I vote for maintainability as the more important feature.



--
Erik Trimble
Java System Support
Mailstop:  usca22-123
Phone:  x17195
Santa Clara, CA
Timezone: US/Pacific (GMT-0800)



Re: Recommended GCC version?

2008-06-19 Thread David Holmes - Sun Microsystems

Andrew,

Andrew John Hughes said the following on 06/20/08 09:35:

I would hope one of the side effects of moving the JDK from a
proprietary to a community-based Free Software model would be that it
gets built, run and tested on a much wider range of platforms and
compilers.  This has already started to happen.


Agreed - this is a good end goal. Meanwhile there are some 
practicalities to address.



The reality is that people aren't going to download and build a
specific copy of GCC just for OpenJDK, and distros will certainly want
it to build with the GCC they use for everything else.


But are the Distros expecting/assuming that everything will work fine 
with their version of GCC? Who is expected to have done the testing? If 
something goes wrong who would be expected to fix it? Would the Distros 
patch the OpenJDK code with a workaround for their GCC version? Or would 
they grab a known working GCC version and rebuild using that?


Right now the reality is that these alternate compiler versions have not 
undergone extensive testing for the OpenJDK. Over time that will 
hopefully change, but for now - caveat emptor!


Cheers,
David Holmes



Re: Recommended GCC version?

2008-06-19 Thread Erik Trimble

David Holmes - Sun Microsystems wrote:
Do we need to be careful about the word "recommended" here? There is a 
big difference between "compiles fine" and "works fine". Anyone using 
alternate compilers to build the JDK (Hotspot in particular) may 
encounter compiler specific bugs at runtime.


Do we have a big disclaimer/warning somewhere about this? Any bug 
reports would need to include which compiler was used.


David Holmes

John Coomes said the following on 06/20/08 06:54:

Mario Torre ([EMAIL PROTECTED]) wrote:
Il giorno lun, 31/03/2008 alle 18.37 +0200, Clemens Eisserer ha 
scritto:

Hello,

I wonder which version of GCC is recommended for building OpenJDK?
4.3 will probably not work out-of-the-box, should I downgrade to 
4.2 or 4.1?

...
Thanks a lot, lg Clemens

I had to "steal" a couple of patches from icedtea to be able to build
hotspot with gcc 4-3, works fine otherwise.


FWIW, the fix for

6681796: hotspot build failure on gcc 4.2.x (ubuntu 8.04) w/ 
openjdk 6


went into the hotspot runtime repository a few days ago:

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/f139919897d2

It should make its way up to jdk7/jdk7/hotspot fairly soon for jdk7
build 30 or 31.  I expect that will allow hotspot to build on current
linux distros, but I haven't tried yet.

-John



Honestly, I think David has a really good point here. While it's 
certainly a good idea to support a couple of different compilers on each 
platform, I think we should be particular to chose a specific version of 
each compiler, and declare that an "official" compiler.


That is, we really shouldn't try to support all the versions of GCC, 
SunStudio, or Visual Studio.   People should be encouraged to pick a 
specific version, and then go with that for some time.   If we don't do 
this, then we end up having to support (and keep track of) all sorts of 
workarounds for all the various sub-versions.  e.g.  gcc4.0, gcc4.2, 
Visual Studio 2008, Visual Studio Express 2005, etc.  Which, is a 
complete waste of time.


I realize this a pain with the various Linux distros, since they all 
tend to ship with a different gcc version as the default one.  HOWEVER, 
it isn't such a problem, as getting a "standard" gcc version is usually 
simple, since the various Linux repositories now contain a wide 
selection of them.


Maybe we need to update the READMEs and such with more explicit 
instructions as to using specific versions of compilers.



And, speaking to the community as a whole, I think it would benefit 
everyone if we could agree on single compiler versions to concentrate 
effort on, to avoid duplication of effort and needless waste of time.  
These standardized versions should be periodically reviewed of course 
for consideration of being updated, but I'd think no more often than 
yearly, if that.





--
Erik Trimble
Java System Support
Mailstop:  usca22-123
Phone:  x17195
Santa Clara, CA
Timezone: US/Pacific (GMT-0800)



Re: Recommended GCC version?

2008-06-19 Thread Andrew John Hughes
On 20/06/2008, David Holmes - Sun Microsystems <[EMAIL PROTECTED]> wrote:
> Do we need to be careful about the word "recommended" here? There is a big
> difference between "compiles fine" and "works fine". Anyone using alternate
> compilers to build the JDK (Hotspot in particular) may encounter compiler
> specific bugs at runtime.
>
>  Do we have a big disclaimer/warning somewhere about this? Any bug reports
> would need to include which compiler was used.
>
>  David Holmes
>

I would hope one of the side effects of moving the JDK from a
proprietary to a community-based Free Software model would be that it
gets built, run and tested on a much wider range of platforms and
compilers.  This has already started to happen.

The reality is that people aren't going to download and build a
specific copy of GCC just for OpenJDK, and distros will certainly want
it to build with the GCC they use for everything else.

As I say, the advantage of this now being a community project is that
this burden is no longer just in Sun's hands, everyone can help out.
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8


Re: Recommended GCC version?

2008-06-19 Thread David Holmes - Sun Microsystems
Do we need to be careful about the word "recommended" here? There is a 
big difference between "compiles fine" and "works fine". Anyone using 
alternate compilers to build the JDK (Hotspot in particular) may 
encounter compiler specific bugs at runtime.


Do we have a big disclaimer/warning somewhere about this? Any bug 
reports would need to include which compiler was used.


David Holmes

John Coomes said the following on 06/20/08 06:54:

Mario Torre ([EMAIL PROTECTED]) wrote:

Il giorno lun, 31/03/2008 alle 18.37 +0200, Clemens Eisserer ha scritto:

Hello,

I wonder which version of GCC is recommended for building OpenJDK?
4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 4.1?
...
Thanks a lot, lg Clemens

I had to "steal" a couple of patches from icedtea to be able to build
hotspot with gcc 4-3, works fine otherwise.


FWIW, the fix for

6681796: hotspot build failure on gcc 4.2.x (ubuntu 8.04) w/ openjdk 6

went into the hotspot runtime repository a few days ago:

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/f139919897d2

It should make its way up to jdk7/jdk7/hotspot fairly soon for jdk7
build 30 or 31.  I expect that will allow hotspot to build on current
linux distros, but I haven't tried yet.

-John



Re: Recommended GCC version?

2008-06-19 Thread John Coomes
Mario Torre ([EMAIL PROTECTED]) wrote:
> Il giorno lun, 31/03/2008 alle 18.37 +0200, Clemens Eisserer ha scritto:
> > Hello,
> > 
> > I wonder which version of GCC is recommended for building OpenJDK?
> > 4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 4.1?
> > ...
> > Thanks a lot, lg Clemens
> 
> I had to "steal" a couple of patches from icedtea to be able to build
> hotspot with gcc 4-3, works fine otherwise.

FWIW, the fix for

6681796: hotspot build failure on gcc 4.2.x (ubuntu 8.04) w/ openjdk 6

went into the hotspot runtime repository a few days ago:

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/f139919897d2

It should make its way up to jdk7/jdk7/hotspot fairly soon for jdk7
build 30 or 31.  I expect that will allow hotspot to build on current
linux distros, but I haven't tried yet.

-John



Re: Recommended GCC version?

2008-06-19 Thread Mario Torre
Il giorno lun, 31/03/2008 alle 18.37 +0200, Clemens Eisserer ha scritto:
> Hello,
> 
> I wonder which version of GCC is recommended for building OpenJDK?
> 4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 4.1?
> 
> Some time ago I developed using the closed java-source, and I had to
> install gcc-3.3.6 in order to be able to build the motif-stuff,
> however using such an old version of gcc, linking hotspot failed with
> some obscure messages. (I solved it by copying an already compiled
> library into the build-dirs, so the process thought hotspot was
> already build ;) ).
> Is it possible to not build the motif stuff at all?
> 
> Thanks a lot, lg Clemens

I had to "steal" a couple of patches from icedtea to be able to build
hotspot with gcc 4-3, works fine otherwise.

Mario



Re: Recommended GCC version?

2008-04-01 Thread Andrew John Hughes
On 31/03/2008, Volker Simonis <[EMAIL PROTECTED]> wrote:
> Hi Clemens,
>
>  I recently successfully built the whole OpenJDK using gcc 3.3.3 on
>  Suse Enterprise Linux 9.3 (see
>  
> http://weblogs.java.net/blog/simonis/archive/2008/01/hotspot_develop.html#Build).
>  I had no linking problems. Currently I'm building HotSpot only on
>  OpenSuse 10.0 with gcc 4.0.2.
>
>  I think with every gcc newer than 3.2.2 (which is the recommanded GCC
>  version if you follow the Readme:
>  http://hg.openjdk.java.net/jdk7/jdk7/raw-file/tip/README-builds.html#gcc)
>  youll have  to disable the treatment of warnings as errors (see my
>  blog entry mentioned above).
>
>  Regarding your linking problem: is this perhaps the 'cannot restore
>  segment prot after reloc' problem (BugID 6538311:
>  http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6538311). This is
>  caused by SELinux - there's a workaround in the bug description.
>
>  Hope this helps,
>
> Volker
>
>
>  On 3/31/08, Clemens Eisserer <[EMAIL PROTECTED]> wrote:
>  > Hello,
>  >
>  >  I wonder which version of GCC is recommended for building OpenJDK?
>  >  4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 
> 4.1?
>  >
>  >  Some time ago I developed using the closed java-source, and I had to
>  >  install gcc-3.3.6 in order to be able to build the motif-stuff,
>  >  however using such an old version of gcc, linking hotspot failed with
>  >  some obscure messages. (I solved it by copying an already compiled
>  >  library into the build-dirs, so the process thought hotspot was
>  >  already build ;) ).
>  >  Is it possible to not build the motif stuff at all?
>  >
>  >  Thanks a lot, lg Clemens
>  >
>

Debian uses:

gcc (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)

which seems to build IcedTea/OpenJDK fine.
-- 
Andrew :-)

Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net

PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA  7927 142C 2591 94EF D9D8


Re: Recommended GCC version?

2008-03-31 Thread Volker Simonis
Hi Clemens,

I recently successfully built the whole OpenJDK using gcc 3.3.3 on
Suse Enterprise Linux 9.3 (see
http://weblogs.java.net/blog/simonis/archive/2008/01/hotspot_develop.html#Build).
I had no linking problems. Currently I'm building HotSpot only on
OpenSuse 10.0 with gcc 4.0.2.

I think with every gcc newer than 3.2.2 (which is the recommanded GCC
version if you follow the Readme:
http://hg.openjdk.java.net/jdk7/jdk7/raw-file/tip/README-builds.html#gcc)
youll have  to disable the treatment of warnings as errors (see my
blog entry mentioned above).

Regarding your linking problem: is this perhaps the 'cannot restore
segment prot after reloc' problem (BugID 6538311:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6538311). This is
caused by SELinux - there's a workaround in the bug description.

Hope this helps,
Volker

On 3/31/08, Clemens Eisserer <[EMAIL PROTECTED]> wrote:
> Hello,
>
>  I wonder which version of GCC is recommended for building OpenJDK?
>  4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 4.1?
>
>  Some time ago I developed using the closed java-source, and I had to
>  install gcc-3.3.6 in order to be able to build the motif-stuff,
>  however using such an old version of gcc, linking hotspot failed with
>  some obscure messages. (I solved it by copying an already compiled
>  library into the build-dirs, so the process thought hotspot was
>  already build ;) ).
>  Is it possible to not build the motif stuff at all?
>
>  Thanks a lot, lg Clemens
>


Recommended GCC version?

2008-03-31 Thread Clemens Eisserer
Hello,

I wonder which version of GCC is recommended for building OpenJDK?
4.3 will probably not work out-of-the-box, should I downgrade to 4.2 or 4.1?

Some time ago I developed using the closed java-source, and I had to
install gcc-3.3.6 in order to be able to build the motif-stuff,
however using such an old version of gcc, linking hotspot failed with
some obscure messages. (I solved it by copying an already compiled
library into the build-dirs, so the process thought hotspot was
already build ;) ).
Is it possible to not build the motif stuff at all?

Thanks a lot, lg Clemens