Author: dj Date: 2008-05-11 23:07:53 -0600 (Sun, 11 May 2008) New Revision: 7452
Modified: branches/6.3/BOOK/general.ent branches/6.3/BOOK/general/prog/jdk.xml branches/6.3/BOOK/introduction/welcome/changelog.xml Log: Removed JDK source installation. Modified: branches/6.3/BOOK/general/prog/jdk.xml =================================================================== --- branches/6.3/BOOK/general/prog/jdk.xml 2008-05-11 16:34:03 UTC (rev 7451) +++ branches/6.3/BOOK/general/prog/jdk.xml 2008-05-12 05:07:53 UTC (rev 7452) @@ -4,29 +4,14 @@ <!ENTITY % general-entities SYSTEM "../../general.ent"> %general-entities; - <!ENTITY jdk-download-binary "http://java.sun.com/javase/downloads/index.jsp"> - <!ENTITY jdk-bin-md5sum "f7528500c17c09546566e05988beda86"> - <!ENTITY jdk-bin-size "67 MB"> - <!ENTITY jdk-bin-buildsize "207 MB"> - <!ENTITY jdk-bin-version "6u5"> + <!ENTITY jdk-download-http "http://java.sun.com/javase/downloads/index.jsp"> + <!ENTITY jdk-md5sum "f7528500c17c09546566e05988beda86"> + <!ENTITY jdk-size "67 MB"> + <!ENTITY jdk-buildsize "207 MB"> + <!ENTITY jdk-build-time "0.2 SBU"> + <!ENTITY jdk-bin-version "6u5"> + <!ENTITY jdk-version-string "1.6.0_05"> - <!ENTITY jdk-source-jrl-md5sum "83390379fb9f3193e93a9d5eed5b31d9"> - <!ENTITY jdk-source-bin-md5sum "8b6f1b8d8dec051c18385539111141ec"> - <!ENTITY jdk-source-moz-md5sum "6dcaf7af16211617adff5d672a8b79f4"> - - <!ENTITY jdk-source-jrl-size "111 MB"> - <!ENTITY jdk-source-bin-size "2 MB"> - <!ENTITY jdk-source-moz-size "8.2 MB"> - - <!ENTITY jdk-src-buildsize "1.5 GB"> - <!ENTITY jdk-time "12.5 SBU (for both installations)"> - <!ENTITY jdk-version-string "6u3"> - <!ENTITY jdk-bin-version-string "1.6.0_05"> - - <!ENTITY jdk-download-source-jrl "http://www.java.net/download/jdk6/&jdk-version-string;/promoted/b05/jdk-&jdk-version-string;-fcs-src-b05-jrl-24_sep_2007.jar"> - <!ENTITY jdk-download-source-bin "http://www.java.net/download/jdk6/&jdk-version-string;/promoted/b05/jdk-&jdk-version-string;-fcs-bin-b05-jrl-24_sep_2007.jar"> - <!ENTITY jdk-download-source-moz "http://www.java.net/download/jdk6/&jdk-version-string;/promoted/b05/jdk-&jdk-version-string;-fcs-mozilla_headers-b05-unix-24_sep_2007.jar"> - ]> <sect1 id="jdk" xreflabel="JDK-&jdk-version;"> @@ -53,133 +38,45 @@ programs. It also includes a plug-in for browsers so that they can be <application>Java</application> aware.</para> - <!-- Previously, the plugin included - in the <application>JDK</application> binary package was unusable on LFS - owing to incompatibilities with <application>GCC</application>-3 compiled - browsers. This is not the case anymore.</para> --> - <para>The <application>JDK</application> comes in two flavors, a - precompiled binary and a source package. You will first need to download - and install the binary version of the <application>JDK</application> - (you'll need to click and agree to the <quote>Sun Microsystems, Inc. - Binary Code License Agreement</quote>). To build from the source, you - will need to read, and agree to the Sun - <!--<ulink url="&patch-root;/jdk-Readme.txt">-->Java Research License<!--</ulink>-->. - You will also need to download the additional files and patches to - complete the source build as detailed below. Note that in some countries - you cannot download the source code.</para> - - <warning><para>Sun has recently decided not to provide JRL sources for - the latest update versions of the JDK. The source build instructions and - patches are here for reference only, and contain known security - vulnerabilities. For more information, please see Sun Alerts - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-231246-1">231246</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233321-1">233321</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233322-1">233322</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233323-1">233323</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233324-1">233324</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233325-1">233325</ulink>, - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233326-1">233326</ulink>, and - <ulink url="http://sunsolve.sun.com/search/document.do?assetkey=1-66-233327-1">233327</ulink>.</para> - <para> Sun is actively working on a GPL'd version of the JDK, titled + <note><para>Sun has recently decided not to provide JRL sources for + the latest update versions of the JDK. Sun is actively working on a GPL'd + version of the JDK, titled <ulink url="http://openjdk.java.net/projects/jdk6/">OpenJDK</ulink>. This new JDK will be licensed under the <ulink url="http://openjdk.java.net/legal/gplv2+ce.html">GNU General Public License, version 2, with the Classpath Exception</ulink>. - A stable OpenJDK was not available at the time of writing.</para></warning> + A stable OpenJDK was not available at the time of writing.</para></note> - <bridgehead renderas="sect3">Binary Package Information</bridgehead> + <bridgehead renderas="sect3">Package Information</bridgehead> <itemizedlist spacing="compact"> <listitem> - <para>Binary download (jdk-&jdk-bin-version;-linux-i586.bin): - <ulink url="&jdk-download-binary;"/></para> + <para>Download (jdk-&jdk-bin-version;-linux-i586.bin): + <ulink url="&jdk-download-http;"/></para> </listitem> <listitem> - <para>Download MD5 sum: &jdk-bin-md5sum;</para> + <para>Download MD5 sum: &jdk-md5sum;</para> </listitem> <listitem> - <para>Download size (binary): &jdk-bin-size;</para> + <para>Download size (binary): &jdk-size;</para> </listitem> <listitem> - <para>Estimated disk space required: &jdk-bin-buildsize;</para> + <para>Estimated disk space required: &jdk-buildsize;</para> </listitem> - </itemizedlist> - - <bridgehead renderas="sect3">Source Package Information</bridgehead> - - <itemizedlist spacing="compact"> <listitem> - <para>JRL Source - <simplelist> - <member><ulink url="&jdk-download-source-jrl;"/></member> - <member>&jdk-source-jrl-md5sum;</member> - <member>&jdk-source-jrl-size;</member> - </simplelist> - </para> + <para>Estimated build time: &jdk-build-time;</para> </listitem> - <listitem> - <para>Source Binaries - <simplelist> - <member><ulink url="&jdk-download-source-bin;"/></member> - <member>&jdk-source-bin-md5sum;</member> - <member>&jdk-source-bin-size;</member> - </simplelist> - </para> - </listitem> - <listitem> - <para>Mozilla Headers - <simplelist> - <member><ulink url="&jdk-download-source-moz;"/></member> - <member>&jdk-source-moz-md5sum;</member> - <member>&jdk-source-moz-size;</member> - </simplelist> - </para> - </listitem> - <listitem> - <para>Estimated disk space required: &jdk-src-buildsize;</para> - </listitem> - <listitem> - <para>Estimated build time: &jdk-time;</para> - </listitem> </itemizedlist> - <bridgehead renderas="sect3">Additional Downloads</bridgehead> - - <bridgehead renderas="sect4">Required Patches</bridgehead> - <itemizedlist spacing='compact'> - <listitem> - <para><ulink - url="&patch-root;/jdk-&jdk-version-string;-gcc4-1.patch"/></para> - </listitem> - <listitem> - <para><ulink - url="&patch-root;/jdk-&jdk-version-string;-motif_fixes-1.patch"/></para> - </listitem> - <listitem> - <para><ulink - url="&patch-root;/jdk-&jdk-version-string;-remove_fixed_paths-1.patch"/></para> - </listitem> - </itemizedlist> - <bridgehead renderas="sect3">JDK Dependencies</bridgehead> - <bridgehead renderas="sect4">Optional Runtime Dependencies (for binary - installation)</bridgehead> + <bridgehead renderas="sect4">Optional Runtime Dependencies</bridgehead> <para role="optional"> <xref linkend="alsa-lib"/>, <xref linkend="cups"/>, and <xref linkend="gtk2"/></para> - <bridgehead renderas="sect4">Additional Requirements - (for source build, including optional requirements)</bridgehead> - <para role="required"> - <xref linkend="cpio"/>, - <xref linkend="ksh"/>, - <xref linkend="unzip"/>, - <xref linkend="which"/>, and - <xref linkend="zip"/></para> - <para condition="html" role="usernotes">User Notes: <ulink url="&blfs-wiki;/jdk"/></para> @@ -188,14 +85,10 @@ <sect2 role="installation"> <title>Installation of JDK</title> - <para>The instructions below install both the binary and source versions. - You may stop after installing the binary version or continue on installing - the source version. You can choose to keep either or both.</para> - <tip> <para>The <command>./jdk-&jdk-bin-version;-linux-i586.bin</command> command below unpacks the distribution into a - <filename class='directory'>jdk&jdk-bin-version-string;</filename> + <filename class='directory'>jdk&jdk-version-string;</filename> directory. You will be required to view, and then accept (by entering a <keycap>y</keycap> keypress), a license agreement before any files are unpacked. If you are scripting (automating) the build, you'll need to @@ -210,7 +103,7 @@ location. For this application only, start in the directory where all the downloaded files are located.</para> - <para>Install the binary <application>JDK</application> with the + <para>Install the <application>JDK</application> with the following commands:</para> <screen><userinput>chmod 755 jdk-&jdk-bin-version;-linux-i586.bin && @@ -225,204 +118,29 @@ <para>Now, as the <systemitem class="username">root</systemitem> user:</para> -<screen role="root"><userinput>cd jdk&jdk-bin-version-string; && -install -v -m755 -d /opt/jdk-bin-&jdk-bin-version; && -mv -v * /opt/jdk-bin-&jdk-bin-version; && -chown -v -R root:root /opt/jdk-bin-&jdk-bin-version; && +<screen role="root"><userinput>cd jdk&jdk-version-string; && +install -v -m755 -d /opt/jdk-&jdk-bin-version; && +mv -v * /opt/jdk-&jdk-bin-version; && +chown -v -R root:root /opt/jdk-&jdk-bin-version; && ln -v -sf xawt/libmawt.so \ - /opt/jdk-bin-&jdk-bin-version;/jre/lib/i386/ && + /opt/jdk-&jdk-bin-version;/jre/lib/i386/ && cd ..</userinput></screen> <para>Recent versions of libX11 break libmawt when used with the Xinerama extension. While still the <systemitem class="username">root</systemitem> user, apply the - following sed to the installed binary to work around this - problem:</para> + following sed to work around this problem:</para> <screen role="root"><userinput>sed -i '[EMAIL PROTECTED]@[EMAIL PROTECTED]' \ - /opt/jdk-bin-&jdk-bin-version;/jre/lib/i386/xawt/libmawt.so</userinput></screen> + /opt/jdk-&jdk-bin-version;/jre/lib/i386/xawt/libmawt.so</userinput></screen> - <para>The binary version is now installed.</para> - - <para>If you don't want to compile the source or are not in a position to - download the source owing to license restrictions, skip ahead to the - configuration section.</para> - - <para>Save the existing path, and append the recently installed - <application>JDK</application>.</para> - -<screen><userinput>export JAVA_HOME=/opt/jdk-bin-&jdk-bin-version; && -export PATH_HOLD=${PATH} && -export PATH=${PATH}:${JAVA_HOME}/bin</userinput></screen> - - <para>The source code is contained in self-extracting - <filename class='extension'>jar</filename> files. You - will need to be in a windowed environment to extract the sources. - Create a directory to store the extracted sources. Choose the newly - created <filename class="directory">jdk-build</filename> directory - when prompted for the target directory.</para> - -<screen><userinput>mkdir jdk-build && -cd jdk-build && -for JAR in ../jdk-&jdk-version-string;*.jar - do java -jar ${JAR} -done</userinput></screen> - - <para>Apply all the patches downloaded above:</para> - -<screen><userinput>for PATCH in ../jdk-&jdk-version-string;*.patch - do patch -Np1 -i ${PATCH} -done</userinput></screen> - - <para>Use the following commands to apply some minor changes that - are a little more specific to BLFS, such as lack of a gcc-2.9 - compiler, removing a broken demo, and forcing to link to shared - libraries. See the 'Command Explanations' section for more detail:</para> - -<screen><userinput>sed -i '/^.*linux)/ { N; /.*/ { N; /.*/d }}' \ - deploy/make/plugin/{adapter,nscore}/Makefile && -sed -i '/.*mtrace.*/ { N; /.*/ s/.*mtrace.*\n.*/\t mtrace/ }' \ - j2se/make/mkdemo/jvmti/Makefile && -sed -i 's/= true/= false/' \ - j2se/make/common/shared/Compiler-gcc.gmk</userinput></screen> - - <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" - href="../../xincludes/X11R6_symlink.xml"/> - - <!-- <para>If your <application>X Window System</application> is installed into - any prefix other than <filename class="directory">/usr/X11R6</filename>, - execute the following commands, replacing - <replaceable><PREFIX></replaceable> with the installation prefix of - the <application>X Window System</application>:</para> - -<screen><userinput>for file in `find . -name Makefile \ - -or -name Imakefile -or -name *.gmk` -do sed -i 's@/usr/X11R6@<replaceable><PREFIX></replaceable>@g' $file -done && -sed -i 's@/usr/X11R6@<replaceable><PREFIX></replaceable>@g' \ - j2se/src/solaris/native/sun/awt/fontpath.c \ - j2se/src/solaris/classes/sun/awt/motif/linux.fontconfig.Sun.properties \ - j2se/src/solaris/classes/sun/awt/motif/linux.fontconfig.RedHat.3.properties</userinput></screen> --> - - <para>Set/unset some variables which affect the build:</para> - -<screen><userinput>export ALT_BOOTDIR=${JAVA_HOME} && -export CLASSPATH_HOLD=${CLASSPATH} && -export ALT_CACERTS_FILE=${ALT_BOOTDIR}/jre/lib/security/cacerts && -export ALT_MOZILLA_HEADERS_PATH=${PWD}/share/plugin && -export MILESTONE="03-BLFS" && -export BUILD_NUMBER="b05" && -export INSANE=true && -export DEV_ONLY=true && -export SKIP_FASTDEBUG_BUILD=true && -unset JAVA_HOME CLASSPATH CFLAGS CXXFLAGS LDFLAGS</userinput></screen> - - <warning><para>Setting CFLAGS/CXXFLAGS/LDFLAGS is guaranteed to make - the build fail. If you are interested in optimizing the build, set - OTHER_CFLAGS/OTHER_CXXFLAGS/OTHER_LDFLAGS instead. -O3, even in - OTHER_C{,XX}FLAGS, is known to cause a build failure.</para></warning> - - - <para>Additionally, if you would like to <command>make</command> in - parallel, add the following:</para> - -<screen><userinput>export HOTSPOT_BUILD_JOBS=<replaceable><3></replaceable></userinput></screen> - - <para>Build the <application>JDK</application> with the following - commands. There will be a few messages about missing files that look like - errors. These are caused by not meeting the expected build environment - (Red Hat). As long as the build doesn't stop, the messages - are harmless.</para> - -<screen><userinput>pushd control/make && -make && -popd</userinput></screen> - - <para>To test the results, you can run one of the provided demo programs - using the newly created <command>java</command> binary. Issue the - following commands:</para> - -<screen><userinput>pushd control/build/linux-i586/j2sdk-image/demo/jfc/Java2D && -../../../bin/java -jar Java2Demo.jar && -popd</userinput></screen> - - <para>Now, as the <systemitem class="username">root</systemitem> user, - install the <application>JDK</application>:</para> - -<screen role="root"><userinput>pushd control/build/linux-i586 && -cp -v -a j2sdk-image /opt/jdk-&jdk-version-string; && -chown -v -R root:root /opt/jdk-&jdk-version-string; && -ln -v -sf xawt/libmawt.so /opt/jdk-&jdk-version-string;/jre/lib/i386/ && -popd</userinput></screen> - - <para>Restore the unprivileged user's environment using the following - commands:</para> - -<screen><userinput>export JAVA_HOME=${ALT_BOOTDIR} && -export CLASSPATH=${CLASSPATH_HOLD} && -export PATH=${PATH_HOLD} && -unset PATH_HOLD ALT_BOOTDIR CLASSPATH_HOLD \ - ALT_CACERTS_FILE ALT_MOZILLA_HEADERS_PATH \ - BUILD_NUMBER MILESTONE INSANE DEV_ONLY \ - SKIP_FASTDEBUG_BUILD</userinput></screen> - </sect2> <sect2 role="commands"> <title>Command Explanations</title> - <para><command>sed -i '/^.*linux)/...</command>: This command disables - the build of a gcc-2.9 compatible browser plugin. LFS does not contain - gcc-2.9, and hasn't in quite a few years.</para> - - <para><command>sed -i '/.*mtrace.*/...</command>: This command disables - building of the broken 'waiters' demo.</para> - - <para><command>sed -i 's/= true/= false/'...</command>: This command - forces the compiler to link against the standard C libraries - dynamically.</para> - - <para><command>export ALT_BOOTDIR=${JAVA_HOME}</command>: This variable sets - the location of the bootstrap <application>JDK</application>.</para> - - <para><command>export ALT_CACERTS_FILE...</command>: Specifies the - certificate file to use (from the installed binary - <application>JDK</application>).</para> - - <para><command>export ALT_MOZILLA_HEADERS_PATH=${PWD}/share/plugin/</command>: - This tells the build exactly where to find the - <application>Mozilla</application> headers. This has changed since the - previous version and is not mentioned in the installation documentation - included with the package source.</para> - - <para><command>export MILESTONE="03-BLFS"</command>: This appends - the string '03-BLFS' to the buld number. 'internal' is - unconditionally added if MILESTONE is unset. This is similar - to the format used by Sun for the official release.</para> - - <para><command>export BUILD_NUMBER="b05"</command>: - This will help you identify the compiled version of the runtime - environment and virtual machine by appending this information to - the version string. This is the same build number used by Sun to - identify the official release.</para> - - <para><command>export INSANE=true</command>: The certified platform for the - build is Redhat Enterprise Advanced Server 2.1. This variable ensures that - all the errors related to compiling on a non-certified platform will be - displayed as warnings instead of errors.</para> - - <para><command>export DEV_ONLY=true</command>: This command - skips compiling the comparison build.</para> - - <para><command>export SKIP_FASTDEBUG_BUILD=true</command>: This command - skips building of the debug version. Omit this command if you need - to build the fastdebug target.</para> - - <para><command>unset JAVA_HOME CLASSPATH CFLAGS CXXFLAGS LDFLAGS</command>: - These variables cause miscompilation of the build. Never set them.</para> - <para><command>ln -sf xawt/libmawt.so - /opt/jdk-&jdk-version-string;/jre/lib/i386/</command>: This fixes + /opt/jdk-&jdk-bin-version;/jre/lib/i386/</command>: This fixes linking issues with other applications that expect to find the <application>motif</application> libraries with the other <application>JDK</application> libraries.</para> @@ -435,13 +153,10 @@ <sect3> <title>Configuration Information</title> - <para>There are now two Java 2 SDKs installed in - <filename>/opt</filename>. You should decide on which one you - would like to use as the default. For example if you decide to use the - precompiled <application>JDK</application>, do the following as the - <systemitem class="username">root</systemitem> user:</para> + <para>As the <systemitem class="username">root</systemitem> user, create + a symlink to the installation directory:</para> -<screen role="root"><userinput>ln -v -nsf jdk-bin-&jdk-bin-version; /opt/jdk</userinput></screen> +<screen role="root"><userinput>ln -v -nsf jdk-&jdk-bin-version; /opt/jdk</userinput></screen> <para>The information below assumes your system is set up using the instructions found in @@ -511,7 +226,7 @@ <seg><envar>$JAVA_HOME</envar>/lib/*, <envar>$JAVA_HOME</envar>/jre/lib/*, and libjavaplugin_oji.so</seg> - <seg>/opt/jdk-&jdk-version-string;</seg> + <seg>/opt/jdk-&jdk-bin-version;</seg> </seglistitem> </segmentedlist> Modified: branches/6.3/BOOK/general.ent =================================================================== --- branches/6.3/BOOK/general.ent 2008-05-11 16:34:03 UTC (rev 7451) +++ branches/6.3/BOOK/general.ent 2008-05-12 05:07:53 UTC (rev 7452) @@ -3,7 +3,7 @@ $Date$ --> -<!ENTITY day "10"> <!-- Always 2 digits --> +<!ENTITY day "12"> <!-- Always 2 digits --> <!ENTITY month "05"> <!-- Always 2 digits --> <!ENTITY year "2008"> <!ENTITY version "svn-&year;&month;&day;"> Modified: branches/6.3/BOOK/introduction/welcome/changelog.xml =================================================================== --- branches/6.3/BOOK/introduction/welcome/changelog.xml 2008-05-11 16:34:03 UTC (rev 7451) +++ branches/6.3/BOOK/introduction/welcome/changelog.xml 2008-05-12 05:07:53 UTC (rev 7452) @@ -42,6 +42,16 @@ --> <listitem> + <para>May 12th, 2008</para> + <itemizedlist> + <listitem> + <para>[dj] - Removed JDK source installation instructions + because of unavailable security patches.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> <para>May 10th, 2008</para> <itemizedlist> <listitem> -- http://linuxfromscratch.org/mailman/listinfo/blfs-book FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
