I've got a similar problem. Anything but the openjdk from ubuntu's repo
compiles, including icedtea6 from
http://icedtea.classpath.org/wiki/Main_Page fails to compile.
This is the only version that seems to compile for me;
$ ./openjdk/control/build/linux-amd64/bin/java -version
java version "1.6.0_0"
IcedTea6 1.3.1 Runtime Environment (build 1.6.0_0-b12)
OpenJDK 64-Bit Server VM (build 1.6.0_0-b12, mixed mode)
Niklas Wirstrom wrote:
Hi All,
thanks for all the answers. You are very helpful. I followed the advice
of using icedTea, and that build without problems.
Andrew, here is what I did to try to build openJDK. The file make.output
is attached.
wget
http://www.java.net/download/jdk7/archive/b39/jdk-7-ea-src-b39-jrl-06_nov_2008.jar
wget
http://www.java.net/download/jdk7/archive/b39/jdk-7-ea-bin-b39-jrl-06_nov_2008.jar
wget
http://www.java.net/download/jdk7/archive/b39/jdk-7-ea-mozilla_headers-b39-unix-06_nov_2008.jar
#I installed the bundles to the same directory
(/home1/niwi/record-replay/java/openJava)
java -jar jdk-7-ea-bin-b39-jrl-06_nov_2008.jar
java -jar jdk-7-ea-mozilla_headers-b39-unix-06_nov_2008.jar
java -jar jdk-7-ea-src-b39-jrl-06_nov_2008.jar
cd /home1/niwi/record-replay/java/openJava
unset CLASSPATH JAVA_HOME
export ALT_MOZILLA_HEADERS_PATH=$(pwd)/share/plugin
export ALT_BOOTDIR=/usr/lib/jvm/java-6-sun
make sanity #Note: The sanity check passes even if ALT_BOOTDIR is unset
make &> make.output
Andrew John Hughes wrote:
2008/11/21 Kelly O'Hair <[EMAIL PROTECTED]>:
Sorry, I meant to explicitly call out the 3 "WARNING:" messages.
The bcopy problem is a separate thing, more serious and needs to be
fix in OpenJDK sources. Glad to hear that IcedTea has them fixed.
We just remove the offending lines from
openjdk/hotspot/src/share/vm/libadt/port.hpp which works on GNU/Linux
platforms but I'm not sure if anyone has built the result on Solaris.
The 3 "WARNING:"s are coming from the jdk/make/common/shared/Sanity.gmk
file but they are surrounded with "ifndef OPENJDK" and by default
the variable OPENJDK should be set.
These messages were for the closed or JRL built JDK, and will be deleted
soon.
So my concern is, how did they come out in a OPENJDK=true build?
I'm not sure; I've not seen this on any of the numerous occasions I've
built OpenJDK and OpenJDK6. FWIW, we build with:
"ALT_JDK_IMPORT_PATH=$(ICEDTEA_BOOT_DIR)" \
"ANT_HOME=$(SYSTEM_ANT_DIR)" \
"BUILD_NUMBER=$(OPENJDK_VERSION)" \
"JDK_UPDATE_VERSION=$(JDK_UPDATE_VERSION)" \
"JRE_RELEASE_VERSION=1.7.0_$(COMBINED_VERSION)" \
"LANG=C" \
"PATH=$(abs_top_builddir)/bootstrap/jdk1.6.0/bin:/usr/bin:/bin:/usr/sbin:/sbin"
\
"ALT_BOOTDIR=$(ICEDTEA_BOOT_DIR)" \
"ALT_BINARY_PLUGS_PATH=$(abs_top_builddir)/bootstrap/jdk1.7.0" \
"BUILD_ARCH_DIR=$(BUILD_ARCH_DIR)" \
"ICEDTEA_RT=$(ICEDTEA_RT)" \
"ICEDTEA_BUILD_DIR=$(ICEDTEA_BUILD_DIR)" \
"ICEDTEA_CLS_DIR=$(ICEDTEA_CLS_DIR)" \
"ICEDTEA_ENDORSED_DIR=$(ICEDTEA_ENDORSED_DIR)" \
"ENDORSED=-Djava.endorsed.dirs=$(ICEDTEA_ENDORSED_DIR)" \
"CLASSPATH=" \
"LD_LIBRARY_PATH=" \
"ICEDTEA_CORE_BUILD=$(ICEDTEA_CORE_BUILD)" \
"ICEDTEA_ZERO_BUILD=$(ICEDTEA_ZERO_BUILD)" \
"ICEDTEA_SHARK_BUILD=$(ICEDTEA_SHARK_BUILD)" \
"ZERO_LIBARCH=$(ZERO_LIBARCH)" \
"ZERO_BITSPERWORD=$(ZERO_BITSPERWORD)" \
"ZERO_ENDIANNESS=$(ZERO_ENDIANNESS)" \
"ZERO_ARCHDEF=$(ZERO_ARCHDEF)" \
"ZERO_ARCHFLAG=$(ZERO_ARCHFLAG)" \
"LIBFFI_CFLAGS=$(LIBFFI_CFLAGS)" \
"LIBFFI_LIBS=$(LIBFFI_LIBS)" \
"LLVM_CFLAGS=$(LLVM_CFLAGS)" \
"LLVM_LDFLAGS=$(LLVM_LDFLAGS)" \
"LLVM_LIBS=$(LLVM_LIBS)" \
"FREETYPE2_HEADERS=$(FREETYPE2_CFLAGS)" \
"FT2_LIB=$(FREETYPE2_LIBS)" \
"ALT_PARALLEL_COMPILE_JOBS=$(PARALLEL_JOBS)" \
"HOTSPOT_BUILD_JOBS=$(PARALLEL_JOBS)" \
"JAVAC=" \
"RHINO_JAR=$(RHINO_JAR)" \
"DISTRIBUTION_ID=$(DIST_ID)"
A lot of that's IcedTea-specific or designed to ensure that
options/binaries defined by configure are passed down to the OpenJDK
make process. It would be useful to know how Niklas is building
OpenJDK.
-kto
Andrew John Hughes wrote:
2008/11/21 Kelly O'Hair <[EMAIL PROTECTED]>:
You can ignore the 3 WARNINGS, they will be removed soon.
I have to admit I've never seen those warnings. I'm sure I don't need
to say I'm not running a 2.4 copy of Linux.
However, I'm 99.9% sure that these error messages should not be seen
at all when building the OpenJDK sources.
We've patched bcopy and friends out in IcedTea, so clearly others have
run into them. Matthias Koch, who packages IcedTea for Debian/Ubuntu,
added the patch so you'd have to ask him. Maybe a newer gcc promotes
them from warnings to errors?
Exactly where did you get the sources from?
Probably http://openjdk.java.net, that's where I get mine :)
-kto
[EMAIL PROTECTED] wrote:
Hi,
I am trying to build the open JDK from source (using the b39 snapshot
release) on Ubuntu 8.10, but I get the following error message:
In file included from ../generated/incls/_precompiled.incl:286:
/home1/niwi/record-replay/java/openJava/fifth-try/hotspot/src/share/vm/libadt/port.hpp:
In function 'void bcopy(const void*, void*, size_t)':
/home1/niwi/record-replay/java/openJava/fifth-try/hotspot/src/share/vm/libadt/port.hpp:40:
error: 'void bcopy(const void*, void*, size_t)' redeclared inline
without
'gnu_inline' attribute
/usr/include/bits/string3.h:90: error: 'void bcopy(const void*,
void*,
size_t)' previously defined here
The sanity test passes, but with the following warnings:
WARNING: The official linux builds use OS version 2.4.9-e.3.
You appear to be using OS version 2.6.27-7-generic.
WARNING: The build is being done on Linux Unknown linux.
The official linux builds use Linux Advanced Server,
specifically Linux Advanced Server release 2.1AS.
The version found was '2.6.27-7-generic'.
WARNING: The linux compiler is not version 3.2
Specifically the GCC compiler.
You appear to be using compiler version: 4.3
The compiler was obtained from the following location:
/usr/bin/
Any suggestions?
Thanks
/Niklas