Hi Omair,
The static vs dynamic link check that you see is only in place for the
JDK libraries not hotspot. For hotspot (which has not been modified as
part of the build-infra project) you still need to pass STATIC_CXX=false
as a make variable on the make invocation.
David
-----
On 10/07/2012 9:27 AM, Omair Majid wrote:
Hi Kelly,
On 07/09/2012 06:12 PM, Kelly O'Hair wrote:
The jdk8/build forest has been in sync for a few days, so anyone willing to try
the new build system with OpenJDK 8, please
follow these instructions:
hg clone http://hg.openjdk.java.net/jdk8/build jdk8-build
cd jdk8-build
sh ./get_source.sh
cd common/makefiles
../autoconf/configure
make images
Let us know what works, what doesn't.
I tried it out and ran into a bit of a snag:
$ bash ../autoconf/configure
checking for readlink... /usr/bin/readlink
checking for apt-get... no
checking for yum... yum
checking for grep that handles long lines and -e... /usr/bin/grep
checking for gawk... gawk
[ snip ]
checking if dynamic link of stdc++ is possible... yes
checking if static link of stdc++ is possible... no
configure: Static linking of libstdc++ was not possible reverting to
dynamic linking.
checking how to link with libstdc++... dynamic
[ snip ]
====================================================
A new configuration has been successfully created in
/home/omajid/devel/jdk8-build/build/linux-x64-normal-server-release
using default settings.
Configuration summary:
* Debug level: release
* JDK variant: normal
* JVM variants: server
* OpenJDK target: OS: linux, CPU architecture: x86, address length: 64
* Boot JDK: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.3.x86_64
Build performance summary:
* Cores to use: 4
* Memory limit: 3753 MB
* ccache status: not installed (consider installing)
Build performance tip: ccache gives a tremendous speedup for C++
recompilations.
You do not have ccache installed. Try installing it.
You might be able to fix this by running 'sudo yum install ccache'.
$ make images
Building OpenJDK for target 'images' in configuration
'linux-x64-normal-server-release'
[ snip ]
Compiling
/home/omajid/devel/jdk8-build/hotspot/src/share/vm/utilities/workgroup.cpp
Compiling
/home/omajid/devel/jdk8-build/hotspot/src/share/vm/utilities/xmlstream.cpp
Compiling
/home/omajid/devel/jdk8-build/hotspot/src/share/vm/utilities/yieldingWorkgroup.cpp
Making signal interposition lib...
Making SA debugger back-end...
Compiling
/home/omajid/devel/jdk8-build/hotspot/src/share/vm/runtime/vm_version.cpp
Linking vm...
/usr/bin/ld: cannot find -lstdc++
collect2: error: ld returned 1 exit status
ln: accessing `libjvm.so.1': Too many levels of symbolic links
/usr/bin/chcon: failed to get security context of `libjvm.so': Too many
levels of symbolic links
ERROR: Cannot chcon libjvm.so
/usr/bin/objcopy: Warning: could not locate 'libjvm.so'. reason: Too
many levels of symbolic links
make[5]: *** [libjvm.so] Error 1
make[4]: *** [the_vm] Error 2
make[3]: *** [product] Error 2
make[2]: *** [generic_build2] Error 2
make[1]: *** [product] Error 2
make: *** [hotspot-only] Error 2
As you can tell, I don not have static c++ linking available, but
linking dynamically is failing too. I have built other variants of
openjdk 7 and 8 on this machine before using dynamic linking
(STATIC_CXX=false), so I was expecting this to work. Is there any
additional information I can provide to help?
Thanks,
Omair