A GPL'd JDK from scratch is ready for testing

DJ Lucas dj at linuxfromscratch.org
Mon Aug 2 23:46:59 PDT 2010


I now have IcedTea6-1.8.1 building without gcj.

Requires Alsa-Libs, Firefox/XulRunner, GTK+, libxp (from Xorg, not in
BLFS currently), unzip, and zip.

Please keep in mind that this is a preliminary set of instructions and
has not been tested on a minimal system, but I would really appreciate
your testing and input.  The binary has not been through JCK testing (I
will do this before putting it into the book).  I will also be holding
the commit for the 1.9.0 release.  1.9.1 or 1.10 will be caught up with
the proprietary Oracle (formerly Sun) JDK.  This build is effectively
1.6.0_u18 with lots of security fixes.  The java.com check for latest
JRE reports as 1.6.0_u18.  Works well with what I've thrown at it so
far.  Full build takes a little over 30 minutes on my box (~90s SBU).


Download all of these files:

IcedTea6:
http://icedtea.classpath.org/download/source/icedtea6-1.8.1.tar.gz

OpenJDK (can be omitted as the Makefile will download for you if you
have wget installed):
http://download.java.net/openjdk/jdk6/promoted/b18/openjdk-6-src-b18-16_feb_2010.tar.gz

IcedTea replacements (these can be omitted as the Makefile will download
for you if you have wget installed):
http://kenai.com/projects/jdk6-drops/downloads/download/jdk6-jaxws-2009_10_27.zip
http://kenai.com/projects/jdk6-drops/downloads/download/jdk6-jaxp-2009_10_27.zip
http://kenai.com/projects/jdk6-drops/downloads/download/jdk6-jaf-2009_10_27.zip

Other needed system jars:
ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R2.zip
http://www.apache.org/dist/xml/xalan-j/binaries/xalan-j_2_7_1-bin.zip
http://ftp.osuosl.org/pub/eclipse/eclipse/downloads/drops/R-3.6-201006080911/ecj-3.6.jar


Binary IcedTea6 and patch to use it for bootstrapping instead of gcj:
http://www.linuxfromscratch.org/~dj/icedtea6/icedtea6-1.8.1-bin.tar.bz2
http://www.linuxfromscratch.org/~dj/icedtea6/icedtea6-1.8.1-with_jdk_home-1.patch


Instructions (not much different than the old I guess):


Install binary IcedTea6-1.8.1 (after extracting tarball):
sudo mv icedtea6-1.8.1-bin /opt &&
sudo chown -R root:root /opt/icedtea6-bin

NOTE:  Stop here if you do not want to rebuild...just go on to the
       configuration section.

Install system jars:
mkdir tempjar &&
cd tempjar &&
sudo install -v -d -m755 /usr/share/java &&
unzip ../../rhino1_7R2.zip &&
sudo install -v -m644 rhino_7R2/*.jar /usr/share/java &&
unzip ../../xalan-j_2_7_1-bin.zip &&
sudo install -v -m644 xalan-j_2_7_1/*.jar /usr/share/java &&
sudo install -v -m644 ../../ecj-3.6.jar /usr/share/java &&
sudo ln -s xalan.jar /usr/share/java/xalan2.jar &&
sudo ln -s ecj-3.6.jar /usr/share/java/ecj.jar &&
cd .. &&
rm -r tempjar

Building IcedTea6 (after extracting source tarball:
unset JAVA_HOME CLASSPATH
export PATH_HOLD=$PATH
export PATH=$PATH:/opt/icedtea6-1.8.1-bin/bin
mkdir drops &&
cp ../jdk6-*.zip drops/ &&
cp ../openjdk-6-src-b18-16_feb_2010.tar.gz . &&
patch -Np1 -i ../icedtea6-1.8.1-with_jdk_home-1.patch &&
autoreconf &&
./configure --with-jdk-home=/opt/icetea6-1.8.1-bin &&
make &&
sudo cp -R openjdk/build/linux/<arch>/j2sdk-image /opt/icedtea6-1.8.1 &&
sudo chown -R root:root /opt/icedtea6-1.8.1

Grab jdk.sh from JDK page in current book, adapt path, resource profile.
Browser plugin is <install_directory>/jre/lib/<arch>/IcedTeaPlugin.so
(like original JDK, it must be symlink'd from your browser plugins
directory).

Happy testing.

-- DJ Lucas

-- 
This message has been scanned for viruses and
dangerous content, and is believed to be clean.




More information about the blfs-dev mailing list