misc build snags

Doug Lea dl at cs.oswego.edu
Mon Dec 3 04:11:00 PST 2012


I set up jdk8 builds on linux64, solarisx86 (client and server)
and solaris sparc(v9) over the past few days. Here are a few notes.
Sorry if any are duplicates of known issues.

1. Defaulting JOBS to #cpus is probably not the best policy.
On a 64way linux box, doing this in the jdk build caused
enough total threads to be created that it hit resource limits
causing hard-to-diagnose problems like dumping OOME messages
into generated char encoding files. Maybe you could cap max
at some value like 16 unless overridden.

2. The documentation should be clearer about how configure
uses PATHs and environment variables.
On solaris, using anything other than the following
seemed to lead to trouble.

setenv PATH /opt/SUNWspro/bin:/usr/bin:/opt/sfw/bin:/usr/sfw/bin
setenv MAKE /opt/sfw/bin/make
unsetenv CLASSPATH
unsetenv JAVA_HOME
unsetenv LD_LIBRARY_PATH

... assuming an up to date make in /opt/sfw/bin, like the one
from sunfreeware.com. Also other up to date stuff from there,
like gnm. It would be especially helpful to list exactly which
things you use.

I don't know why the probe tries to use /usr/sfw/bin/gmake
unless you set MAKE variable.


3. It would be nice to include a hint that on solaris sparcV9
you need to get freetype from source and build with CFLAGS="-m64"

4. You might also mention that on solaris10, if you get the
downloadable SolarisStudio to install or update SUNWspro, you
should ignore the fact that the suggested patches won't apply
and that running a recent 10_Recommended patchset to try to
address this can be a very bad move. (See
https://forums.oracle.com/forums/thread.jspa?threadID=2471109&tstart=0)

And also that even though the warnings suggest otherwise,
(version 5.9 vs 5.10) you can build with this version of
SUNWspro. Or at least it seems to work so far.

5. On fedora linux I get the following message that is
harmless for developer builds but maybe should be better
explained somewhere:

/usr/bin/chcon: failed to change context of `libjvm.so' to 
`system_u:object_r:textrel_shlib_t:s0': Operation not supported
ERROR: Cannot chcon libjvm.so

6. On solaris, I get various complaints about dtrace,
for example:

/usr/sfw/bin/gnm: dtrace.o: File format not recognized
ld: warning: symbol '__JvmOffsets' has differing types:
         (file JvmOffsets.o type=OBJT; file dtrace.o type=FUNC);


7. Not your problem, but fastdebug builds were failing for me until
I discovered pending revision:
http://cr.openjdk.java.net/~rkennke/qualifiers/webrev.00/

8. Also not your problem, but all except sparc builds are
giving char encoding errors; for example:

[Error] encoded value was less than 0: encode(-8.326673E-17, 5.0, 11.0, 16.0)

-Doug




More information about the build-infra-dev mailing list