source: general/prog/jdk.xml@ e13349f

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since e13349f was e13349f, checked in by DJ Lucas <dj@…>, 16 years ago

corrected jdk gcc4 patch revision

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@7149 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 35.3 KB
RevLine 
[52d29f7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[52d29f7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[a8d33f07]7 <!ENTITY jdk-download-binary "http://java.sun.com/javase/downloads/index.jsp">
[be9eae3]8 <!ENTITY jdk-bin-md5sum "dfb8b697591cf63d7f289fd621571db7">
9 <!ENTITY jdk-bin-size "66 MB">
10 <!ENTITY jdk-bin-buildsize "202 MB">
[a8d33f07]11
[be9eae3]12 <!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">
13 <!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">
14 <!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">
[a8d33f07]15
16
[be9eae3]17 <!ENTITY jdk-source-jrl-md5sum "83390379fb9f3193e93a9d5eed5b31d9">
18 <!ENTITY jdk-source-bin-md5sum "8b6f1b8d8dec051c18385539111141ec">
19 <!ENTITY jdk-source-moz-md5sum "6dcaf7af16211617adff5d672a8b79f4">
[a8d33f07]20
[be9eae3]21 <!ENTITY jdk-source-jrl-size "111 MB">
[a8d33f07]22 <!ENTITY jdk-source-bin-size "2 MB">
23 <!ENTITY jdk-source-moz-size "8.2 MB">
24
[be9eae3]25 <!ENTITY jdk-src-buildsize "1.5 GB">
26 <!ENTITY jdk-time "12.5 SBU (for both installations)">
27 <!ENTITY jdk-version-string "6u3">
28 <!ENTITY jdk-bin-version-string "1.6.0_03">
[52d29f7]29]>
30
[a240109f]31<sect1 id="jdk" xreflabel="JDK-&jdk-version;">
[4378f935]32 <?dbhtml filename="jdk.html" ?>
33
34 <sect1info>
35 <othername>$LastChangedBy$</othername>
36 <date>$Date$</date>
37 </sect1info>
38
[a8d33f07]39 <title>JDK-&jdk-version;</title>
[4378f935]40
41 <indexterm zone="jdk">
42 <primary sortas="a-JDK">JDK</primary>
43 </indexterm>
44
45 <sect2 role="package">
46 <title>Introduction to JDK</title>
47
[dae2ba0b]48 <para>The <application>JDK</application> package contains
[bccbdaea]49 Sun's <application>Java</application> development environment. This is
50 useful for developing <application>Java</application> programs and provides
51 the runtime environment necessary to run <application>Java</application>
[cb61e3a8]52 programs. It also includes a plug-in for browsers so that they can be
[4378f935]53 <application>Java</application> aware.</para>
54
[1402f13]55 <!-- Previously, the plugin included
[cb61e3a8]56 in the <application>JDK</application> binary package was unusable on LFS
[bccbdaea]57 owing to incompatibilities with <application>GCC</application>-3 compiled
[cb61e3a8]58 browsers. This is not the case anymore.</para>
[4378f935]59
60 <para>In order to use the source code and patches, you must read and agree
[473131d]61 to the Sun <ulink url="http://www.java.net/jrl.csp"> Java Research
62 License</ulink> or optionally, the Sun <ulink
63 url="http://java.net/jiul.csp">Java Internal Use License</ulink>. In
64 addition, the source code is not allowed to be downloaded to some
65 countries, so for users in those countries, the binary is the only
[1402f13]66 option.</para> -->
[4378f935]67
[1402f13]68 <para>The <application>JDK</application> comes in two flavors, a
69 precompiled binary and a source package. You will first need to download
70 and install the binary version of the <application>JDK</application>
71 (you'll need to click and agree to the <quote>Sun Microsystems, Inc.
72 Binary Code License Agreement</quote>). To build from the source, you will
73 also need to download the additional files and patches to complete the
[1d359cd]74 source build as detailed below. Note that in some countries you cannot
75 download the source code.</para>
[1402f13]76
[a8d33f07]77 <bridgehead renderas="sect3">Binary Package Information</bridgehead>
[4378f935]78 <itemizedlist spacing="compact">
79 <listitem>
[a8d33f07]80 <para>Binary download (jdk-&jdk-version-string;-linux-i586.bin):
[1402f13]81 <ulink url="&jdk-download-binary;"/></para>
82 </listitem>
83 <listitem>
84 <para>Download MD5 sum: &jdk-bin-md5sum;</para>
[4378f935]85 </listitem>
86 <listitem>
[1402f13]87 <para>Download size (binary): &jdk-bin-size;</para>
[4378f935]88 </listitem>
89 <listitem>
[1402f13]90 <para>Estimated disk space required: &jdk-bin-buildsize;</para>
[4378f935]91 </listitem>
[1402f13]92 </itemizedlist>
[428434e7]93
[1402f13]94 <bridgehead renderas="sect3">Source Package Information</bridgehead>
[bc4c3018]95
[1402f13]96 <itemizedlist spacing="compact">
[4378f935]97 <listitem>
[bc4c3018]98 <para>JRL Source
[b26eca2]99 <simplelist>
[bc4c3018]100 <member><ulink url="&jdk-download-source-jrl;"/></member>
101 <member>&jdk-source-jrl-md5sum;</member>
102 <member>&jdk-source-jrl-size;</member>
103 </simplelist>
104 </para>
105 </listitem>
[4378f935]106 <listitem>
[bc4c3018]107 <para>Source Binaries
108 <simplelist>
109 <member><ulink url="&jdk-download-source-bin;"/></member>
110 <member>&jdk-source-bin-md5sum;</member>
111 <member>&jdk-source-bin-size;</member>
112 </simplelist>
113 </para>
114 </listitem>
115 <listitem>
116 <para>Mozilla Headers
117 <simplelist>
118 <member><ulink url="&jdk-download-source-moz;"/></member>
119 <member>&jdk-source-moz-md5sum;</member>
120 <member>&jdk-source-moz-size;</member>
121 </simplelist>
122 </para>
[4378f935]123 </listitem>
124 <listitem>
125 <para>Estimated disk space required: &jdk-src-buildsize;</para>
126 </listitem>
127 <listitem>
128 <para>Estimated build time: &jdk-time;</para>
129 </listitem>
130 </itemizedlist>
131
132 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
133
134 <bridgehead renderas="sect4">Required Patches</bridgehead>
135 <itemizedlist spacing='compact'>
136 <listitem>
137 <para><ulink
[e13349f]138 url="&patch-root;/jdk-&jdk-version-string;-gcc4-1.patch"/></para>
[4378f935]139 </listitem>
140 <listitem>
[dae2ba0b]141 <para><ulink
[a8d33f07]142 url="&patch-root;/jdk-&jdk-version-string;-motif_fixes-1.patch"/></para>
[4378f935]143 </listitem>
144 <listitem>
145 <para><ulink
[a8d33f07]146 url="&patch-root;/jdk-&jdk-version-string;-remove_fixed_paths-1.patch"/></para>
[4378f935]147 </listitem>
148 </itemizedlist>
149
[42a04581]150 <bridgehead renderas="sect3">JDK Dependencies</bridgehead>
[4378f935]151
[5eaa687]152 <bridgehead renderas="sect4">Required (to Build JDK from Source)</bridgehead>
[a8d33f07]153 <para role="required">
154 <xref linkend="alsa-lib"/>,
[dae2ba0b]155 <xref linkend="cpio"/>,
[a8d33f07]156 <xref linkend="cups"/>,
157 <xref linkend="ksh"/>,
158 <xref linkend="unzip"/>,
159 <xref linkend="which"/>,
160 <xref linkend="x-window-system"/>, and
161 <xref linkend="zip"/></para>
[4378f935]162
[ed27aa7]163 <bridgehead renderas="sect4">Runtime Dependency (to use the binary
164 browser plugin)</bridgehead>
165 <para><xref linkend="gcc3"/></para>
166
[1039de3]167 <para condition="html" role="usernotes">User Notes:
168 <ulink url="&blfs-wiki;/jdk"/></para>
169
[4378f935]170 </sect2>
171
172 <sect2 role="installation">
173 <title>Installation of JDK</title>
174
[1402f13]175 <para>The instructions below install both the binary and source versions.
176 You may stop after installing the binary version or continue on installing
177 the source version. You can choose to keep either or both.</para>
[4378f935]178
[d4277d4]179 <tip>
[a8d33f07]180 <para>The <command>./jdk-&jdk-version-string;-linux-i586.bin</command>
[d4277d4]181 command below unpacks the distribution into a
[a8d33f07]182 <filename class='directory'>jdk&jdk-bin-version-string;</filename>
183 directory. You will be required to view, and then accept (by entering a
[d4277d4]184 <keycap>y</keycap> keypress), a license agreement before any files are
185 unpacked. If you are scripting (automating) the build, you'll need to
186 account for this. There is information about automating build commands
187 in the <xref linkend="automating-builds"/> section of Chapter 2. Towards
188 the end of this section, specific information for automating this type of
189 installation is discussed.</para>
190 </tip>
191
[b26eca2]192 <para>Normally in BLFS, the files are unpacked into a subdirectory
[6473e74]193 and the starting point for the installation procedures is that
[b26eca2]194 location. For this application only, start in the directory where all
195 the downloaded files are located.</para>
196
[a8d33f07]197 <para>Install the binary <application>JDK</application> with the
[4378f935]198 following commands:</para>
199
[a8d33f07]200<screen><userinput>chmod 755 jdk-&jdk-version-string;-linux-i586.bin &amp;&amp;
201./jdk-&jdk-version-string;-linux-i586.bin</userinput></screen>
[2a7340c2]202
[4378f935]203 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
[2a7340c2]204
[a8d33f07]205<screen role="root"><userinput>cd jdk&jdk-bin-version-string; &amp;&amp;
206install -v -m755 -d /opt/jdk-bin-&jdk-version-string; &amp;&amp;
207mv -v * /opt/jdk-bin-&jdk-version-string; &amp;&amp;
208chown -v -R root:root /opt/jdk-bin-&jdk-version-string; &amp;&amp;
209ln -v -sf xawt/libmawt.so \
210 /opt/jdk-bin-&jdk-version-string;/jre/lib/i386/ &amp;&amp;
[b26eca2]211cd ..</userinput></screen>
[014d11ad]212
[a8d33f07]213 <para>Recent versions of libX11 break the statically linked libmawt
214 when used with the Xinerama extension. While still the
215 <systemitem class="username">root</systemitem> user, apply the
[be9eae3]216 following sed to the installed binary to work around this
[a8d33f07]217 problem:</para>
218
219<screen role="root"><userinput>sed -i 's@XINERAMA@FAKEEXTN@g' \
220 /opt/jdk-bin-&jdk-version-string;/jre/lib/i386/xawt/libmawt.so</userinput></screen>
221
[4378f935]222 <para>The binary version is now installed.</para>
[014d11ad]223
[dae2ba0b]224 <para>If you don't want to compile the source or are not in a position to
225 download the source owing to license restrictions, skip ahead to the
[4378f935]226 configuration section.</para>
[014d11ad]227
[bccbdaea]228 <para>Save the existing path, and append the recently installed
[cb61e3a8]229 <application>JDK</application>.</para>
[014d11ad]230
[a8d33f07]231<screen><userinput>export JAVA_HOME=/opt/jdk-bin-&jdk-version-string; &amp;&amp;
[cb61e3a8]232export PATH_HOLD=${PATH} &amp;&amp;
233export PATH=${PATH}:${JAVA_HOME}/bin</userinput></screen>
[014d11ad]234
[aeaebda9]235 <para>The source code is contained in self-extracting
236 <filename class='extension'>jar</filename> files. You
[bccbdaea]237 will need to be in a windowed environment to extract the sources.
[cb61e3a8]238 Create a directory to store the extracted sources. Choose the newly
239 created <filename class="directory">jdk-build</filename> directory
240 when prompted for the target directory.</para>
[014d11ad]241
[4378f935]242<screen><userinput>mkdir jdk-build &amp;&amp;
[5f0bab7]243cd jdk-build &amp;&amp;
[a8d33f07]244for JAR in ../jdk-&jdk-version-string;*.jar
[cb61e3a8]245 do java -jar ${JAR}
246done</userinput></screen>
[014d11ad]247
[b89c7ca]248 <para>Apply all the patches downloaded above:</para>
[014d11ad]249
[a8d33f07]250<screen><userinput>for PATCH in ../jdk-&jdk-version-string;*.patch
[5f0bab7]251 do patch -Np1 -i ${PATCH}
[4378f935]252done</userinput></screen>
[014d11ad]253
[a8d33f07]254 <para>Use the following commands to apply some minor changes that
255 are a little more specific to BLFS, such as lack of a gcc-2.9
256 compiler, removing a broken demo, and forcing to link to shared
257 libraries. See the 'Command Explanations' section for more detail:</para>
258
259<screen><userinput>sed -i '/^.*linux)/ { N; /.*/ { N; /.*/d }}' \
260 deploy/make/plugin/{adapter,nscore}/Makefile &amp;&amp;
261sed -i '/.*mtrace.*/ { N; /.*/ s/.*mtrace.*\n.*/\t mtrace/ }' \
262 j2se/make/mkdemo/jvmti/Makefile &amp;&amp;
263sed -i 's/= true/= false/' \
264 j2se/make/common/shared/Compiler-gcc.gmk</userinput></screen>
265
[71cd2a5a]266 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
267 href="../../xincludes/X11R6_symlink.xml"/>
268
269 <!-- <para>If your <application>X Window System</application> is installed into
[864b24de]270 any prefix other than <filename class="directory">/usr/X11R6</filename>,
[a8d33f07]271 execute the following commands, replacing
[864b24de]272 <replaceable>&lt;PREFIX&gt;</replaceable> with the installation prefix of
[dc19fbff]273 the <application>X Window System</application>:</para>
[985c02e]274
[a8d33f07]275<screen><userinput>for file in `find . -name Makefile \
276 -or -name Imakefile -or -name *.gmk`
277do sed -i 's@/usr/X11R6@<replaceable>&lt;PREFIX&gt;</replaceable>@g' $file
278done &amp;&amp;
279sed -i 's@/usr/X11R6@<replaceable>&lt;PREFIX&gt;</replaceable>@g' \
280 j2se/src/solaris/native/sun/awt/fontpath.c \
281 j2se/src/solaris/classes/sun/awt/motif/linux.fontconfig.Sun.properties \
282 j2se/src/solaris/classes/sun/awt/motif/linux.fontconfig.RedHat.3.properties</userinput></screen> -->
[985c02e]283
[4378f935]284 <para>Set/unset some variables which affect the build:</para>
[2a7340c2]285
[bc2b746]286<screen><userinput>export ALT_BOOTDIR=${JAVA_HOME} &amp;&amp;
287export CLASSPATH_HOLD=${CLASSPATH} &amp;&amp;
[a8d33f07]288export ALT_CACERTS_FILE=${ALT_BOOTDIR}/jre/lib/security/cacerts &amp;&amp;
289export ALT_MOZILLA_HEADERS_PATH=${PWD}/share/plugin &amp;&amp;
[be9eae3]290export MILESTONE="03-BLFS" &amp;&amp;
[a8d33f07]291export BUILD_NUMBER="b05" &amp;&amp;
[52d29f7]292export INSANE=true &amp;&amp;
[a8d33f07]293export DEV_ONLY=true &amp;&amp;
294export SKIP_FASTDEBUG_BUILD=true &amp;&amp;
295unset JAVA_HOME CLASSPATH CFLAGS CXXFLAGS LDFLAGS</userinput></screen>
[014d11ad]296
[a8d33f07]297 <warning><para>Setting CFLAGS/CXXFLAGS/LDFLAGS is guaranteed to make
298 the build fail. If you are interested in optimizing the build, set
[bccbdaea]299 OTHER_CFLAGS/OTHER_CXXFLAGS/OTHER_LDFLAGS instead. -O3, even in
[a8d33f07]300 OTHER_C{,XX}FLAGS, is known to cause a build failure.</para></warning>
301
[014d11ad]302
[40d6bab]303 <para>Additionally, if you would like to <command>make</command> in
304 parallel, add the following:</para>
[2a7340c2]305
[1039de3]306<screen><userinput>export HOTSPOT_BUILD_JOBS=<replaceable>&lt;3&gt;</replaceable></userinput></screen>
[014d11ad]307
[4378f935]308 <para>Build the <application>JDK</application> with the following
[1402f13]309 commands. There will be a few messages about missing files that look like
[bdf7e1b]310 errors. These are caused by not meeting the expected build environment
[dae2ba0b]311 (Red Hat). As long as the build doesn't stop, the messages
[4378f935]312 are harmless.</para>
[014d11ad]313
[1402f13]314<screen><userinput>pushd control/make &amp;&amp;
[52d29f7]315make &amp;&amp;
[1402f13]316popd</userinput></screen>
[2a7340c2]317
[aeaebda9]318 <para>To test the results, you can run one of the provided demo programs
319 using the newly created <command>java</command> binary. Issue the
320 following commands:</para>
321
[a8d33f07]322<screen><userinput>pushd control/build/linux-i586/j2sdk-image/demo/jfc/Java2D &amp;&amp;
[aeaebda9]323../../../bin/java -jar Java2Demo.jar &amp;&amp;
[1402f13]324popd</userinput></screen>
[aeaebda9]325
[dae2ba0b]326 <para>Now, as the <systemitem class="username">root</systemitem> user,
[4378f935]327 install the <application>JDK</application>:</para>
[2a7340c2]328
[a8d33f07]329<screen role="root"><userinput>pushd control/build/linux-i586 &amp;&amp;
330cp -v -a j2sdk-image /opt/jdk-&jdk-version-string; &amp;&amp;
331chown -v -R root:root /opt/jdk-&jdk-version-string; &amp;&amp;
332ln -v -sf xawt/libmawt.so /opt/jdk-&jdk-version-string;/jre/lib/i386/ &amp;&amp;
[1402f13]333popd</userinput></screen>
[2a7340c2]334
[40d6bab]335 <para>Restore the unprivileged user's environment using the following
336 commands:</para>
[2a7340c2]337
[bc2b746]338<screen><userinput>export JAVA_HOME=${ALT_BOOTDIR} &amp;&amp;
339export CLASSPATH=${CLASSPATH_HOLD} &amp;&amp;
[cb61e3a8]340export PATH=${PATH_HOLD} &amp;&amp;
[a8d33f07]341unset PATH_HOLD ALT_BOOTDIR CLASSPATH_HOLD \
342 ALT_CACERTS_FILE ALT_MOZILLA_HEADERS_PATH \
343 BUILD_NUMBER MILESTONE INSANE DEV_ONLY \
344 SKIP_FASTDEBUG_BUILD</userinput></screen>
[014d11ad]345
[4378f935]346 </sect2>
[52d29f7]347
[4378f935]348 <sect2 role="commands">
349 <title>Command Explanations</title>
[014d11ad]350
[a8d33f07]351 <para><command>sed -i '/^.*linux)/...</command>: This command disables
352 the build of a gcc-2.9 compatible browser plugin. LFS does not contain
353 gcc-2.9, and hasn't in quite a few years.</para>
354
355 <para><command>sed -i '/.*mtrace.*/...</command>: This command disables
356 building of the broken 'waiters' demo.</para>
357
358 <para><command>sed -i 's/= true/= false/'...</command>: This command
359 forces the compiler to link against the standard C libraries
360 dynamically.</para>
361
[bc2b746]362 <para><command>export ALT_BOOTDIR=${JAVA_HOME}</command>: This variable sets
[4378f935]363 the location of the bootstrap <application>JDK</application>.</para>
[014d11ad]364
[a8d33f07]365 <para><command>export ALT_CACERTS_FILE...</command>: Specifies the
366 certificate file to use (from the installed binary
367 <application>JDK</application>).</para>
368
[bc2b746]369 <para><command>export ALT_MOZILLA_HEADERS_PATH=${PWD}/share/plugin/</command>:
[cb61e3a8]370 This tells the build exactly where to find the
[bccbdaea]371 <application>Mozilla</application> headers. This has changed since the
372 previous version and is not mentioned in the installation documentation
[cb61e3a8]373 included with the package source.</para>
[014d11ad]374
[be9eae3]375 <para><command>export MILESTONE="03-BLFS"</command>: This appends
376 the string '03-BLFS' to the buld number. 'internal' is
[a8d33f07]377 unconditionally added if MILESTONE is unset. This is similar
378 to the format used by Sun for the official release.</para>
[014d11ad]379
[a8d33f07]380 <para><command>export BUILD_NUMBER="b05"</command>:
381 This will help you identify the compiled version of the runtime
382 environment and virtual machine by appending this information to
383 the version string. This is the same build number used by Sun to
384 identify the official release.</para>
[014d11ad]385
[dae2ba0b]386 <para><command>export INSANE=true</command>: The certified platform for the
387 build is Redhat Enterprise Advanced Server 2.1. This variable ensures that
388 all the errors related to compiling on a non-certified platform will be
[4378f935]389 displayed as warnings instead of errors.</para>
[014d11ad]390
[a8d33f07]391 <para><command>export DEV_ONLY=true</command>: This command
392 skips compiling the comparison build.</para>
[014d11ad]393
[a8d33f07]394 <para><command>export SKIP_FASTDEBUG_BUILD=true</command>: This command
395 skips building of the debug version. Omit this command if you need
396 to build the fastdebug target.</para>
[014d11ad]397
[a8d33f07]398 <para><command>unset JAVA_HOME CLASSPATH CFLAGS CXXFLAGS LDFLAGS</command>:
399 These variables cause miscompilation of the build. Never set them.</para>
400
401 <para><command>ln -sf xawt/libmawt.so
402 /opt/jdk-&jdk-version-string;/jre/lib/i386/</command>: This fixes
[bccbdaea]403 linking issues with other applications that expect to find the
404 <application>motif</application> libraries with the other
[6dd0164]405 <application>JDK</application> libraries.</para>
[61e058b]406
[4378f935]407 </sect2>
[52d29f7]408
[4378f935]409 <sect2 role="configuration">
410 <title>Configuring JDK</title>
[014d11ad]411
[4378f935]412 <sect3>
413 <title>Configuration Information</title>
[014d11ad]414
[bdf7e1b]415 <para>There are now two Java 2 SDKs installed in
[a8d33f07]416 <filename>/opt</filename>. You should decide on which one you
[bccbdaea]417 would like to use as the default. For example if you decide to use the
[cb61e3a8]418 source compiled <application>JDK</application>, do the following as the
[ceafb03e]419 <systemitem class="username">root</systemitem> user:</para>
[014d11ad]420
[a8d33f07]421<screen role="root"><userinput>ln -v -nsf jdk-&jdk-version-string; /opt/jdk</userinput></screen>
[014d11ad]422
[1d359cd]423 <para>The information below assumes your system is set up using the
424 instructions found in
425 <quote><xref linkend="postlfs-config-profile"/></quote>. You may need to
426 extract the relevant information below and incorporate it into your
427 system's startup files if your system is set up differently.</para>
428
[4378f935]429 <para>Add the following <filename>jdk.sh</filename> shell startup file to
[dae2ba0b]430 the <filename>/etc/profile.d</filename> directory with the following
[ceafb03e]431 commands as the <systemitem class="username">root</systemitem> user:</para>
[014d11ad]432
[8a64f4b]433<screen role="root"><userinput>cat &gt; /etc/profile.d/jdk.sh &lt;&lt; "EOF"
[4378f935]434<literal># Begin /etc/profile.d/jdk.sh
[014d11ad]435
[5f0bab7]436# Set JAVA_HOME directory
[a8d33f07]437JAVA_HOME=/opt/jdk
[014d11ad]438
[92b34a8]439# Adjust PATH
[5f0bab7]440pathappend ${JAVA_HOME}/bin PATH
[014d11ad]441
[de27951]442# Auto Java CLASSPATH
443# Copy jar files to, or create symlinks in this directory
[5f0bab7]444AUTO_CLASSPATH_DIR=/usr/lib/classpath
[93a1fa3]445pathprepend . CLASSPATH
446for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do
447 pathappend $dir CLASSPATH
[5f0bab7]448done
[de27951]449
[93a1fa3]450export JAVA_HOME CLASSPATH
451unset AUTO_CLASSPATH_DIR
452unset dir
[014d11ad]453
[4378f935]454# End /etc/profile.d/jdk.sh</literal>
455EOF</userinput></screen>
456
[40d6bab]457 <para>The <application>Java</application> plugin is located in
[4378f935]458 <filename class="directory">$JAVA_HOME/jre/plugin/i?86/ns7/</filename>.
[40d6bab]459 Make a symbolic link to the file in that directory from your browser(s)
[4378f935]460 plugins directory.</para>
461
[40d6bab]462 <important>
[4378f935]463 <para>The plugin must be a symlink for it to work. If not, the browsers
[40d6bab]464 will crash when you attempt to load a <application>Java</application>
[4378f935]465 application.</para>
[40d6bab]466 </important>
[4378f935]467
468 </sect3>
469
470 </sect2>
471
472 <sect2 role="content">
473 <title>Contents</title>
474
475 <segmentedlist>
476 <segtitle>Installed Programs</segtitle>
477 <segtitle>Installed Libraries</segtitle>
478 <segtitle>Installed Directory</segtitle>
479
480 <seglistitem>
[a8d33f07]481 <seg>appletviewer, apt, extcheck, idlj, HtmlConverter, jar,
482 jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi,
483 javaws, jconsole, jdb, jhat, jinfo, jmap, jps,
484 jrunscript, jsadebugd, jstack, jstat, jstatd, keytool,
485 native2ascii, orbd, pack200, policytool, rmic, rmid, rmiregistry,
486 schemagen, serialver, servertool, tnameserv, unpack200,
487 wsgen, wsimport, and xjc</seg>
[bccbdaea]488 <seg><envar>$JAVA_HOME</envar>/lib/*,
[cb61e3a8]489 <envar>$JAVA_HOME</envar>/jre/lib/*,
[4378f935]490 and libjavaplugin_oji.so</seg>
[a8d33f07]491 <seg>/opt/jdk-&jdk-version-string;</seg>
[4378f935]492 </seglistitem>
493 </segmentedlist>
494
495 <variablelist>
496 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
497 <?dbfo list-presentation="list"?>
498 <?dbhtml list-presentation="table"?>
499
500 <varlistentry id="appletviewer">
501 <term><command>appletviewer</command></term>
502 <listitem>
[a8d33f07]503 <para>runs Java applets outside of the context of a browser.</para>
[4378f935]504 <indexterm zone="jdk appletviewer">
505 <primary sortas="b-appletviewer">appletviewer</primary>
506 </indexterm>
507 </listitem>
508 </varlistentry>
509
[a8d33f07]510 <varlistentry id="apt">
511 <term><command>apt</command></term>
512 <listitem>
513 <para>is an annotation processing tool.</para>
514 <indexterm zone="jdk apt">
515 <primary sortas="b-apt">apt</primary>
516 </indexterm>
517 </listitem>
518 </varlistentry>
519
[4378f935]520 <varlistentry id="extcheck">
521 <term><command>extcheck</command></term>
522 <listitem>
[a8d33f07]523 <para>checks a specified jar file for title and version conflicts
524 with any extensions installed in the <application>JDK</application>
525 software.</para>
[4378f935]526 <indexterm zone="jdk extcheck">
527 <primary sortas="b-extcheck">extcheck</primary>
528 </indexterm>
529 </listitem>
530 </varlistentry>
531
[a8d33f07]532 <varlistentry id="HtmlConverter">
533 <term><command>HtmlConverter</command></term>
534 <listitem>
535 <para>adds Java auto download to html and asp pages. </para>
536 <indexterm zone="jdk HtmlConverter">
537 <primary sortas="b-HtmlConverter">HtmlConverter</primary>
538 </indexterm>
539 </listitem>
540 </varlistentry>
541
[4378f935]542 <varlistentry id="idlj">
543 <term><command>idlj</command></term>
544 <listitem>
[a8d33f07]545 <para>generates Java bindings from a given IDL file.</para>
[4378f935]546 <indexterm zone="jdk idlj">
547 <primary sortas="b-idlj">idlj</primary>
548 </indexterm>
549 </listitem>
[0619e6d]550 </varlistentry>
[4378f935]551
552 <varlistentry id="jar">
553 <term><command>jar</command></term>
554 <listitem>
[a8d33f07]555 <para>combines multiple files into a single jar archive.</para>
[4378f935]556 <indexterm zone="jdk jar">
557 <primary sortas="b-jar">jar</primary>
558 </indexterm>
559 </listitem>
560 </varlistentry>
561
562 <varlistentry id="jarsigner">
563 <term><command>jarsigner</command></term>
564 <listitem>
[a8d33f07]565 <para>signs jar files and verifies the signatures and integrity
566 of a signed jar file.</para>
[4378f935]567 <indexterm zone="jdk jarsigner">
568 <primary sortas="b-jarsigner">jarsigner</primary>
569 </indexterm>
570 </listitem>
571 </varlistentry>
572
573 <varlistentry id="java">
574 <term><command>java</command></term>
575 <listitem>
[a8d33f07]576 <para>launches a Java application by starting a Java runtime
577 environment, loading a specified class and invoking its main
578 method.</para>
[4378f935]579 <indexterm zone="jdk java">
580 <primary sortas="b-java">java</primary>
581 </indexterm>
582 </listitem>
583 </varlistentry>
584
585 <varlistentry id="javac">
586 <term><command>javac</command></term>
587 <listitem>
[dae2ba0b]588 <para>reads class and interface definitions, written in the
[a8d33f07]589 Java programming language, and compiles them into bytecode
590 class files.</para>
[4378f935]591 <indexterm zone="jdk javac">
592 <primary sortas="b-javac">javac</primary>
593 </indexterm>
594 </listitem>
595 </varlistentry>
596
597 <varlistentry id="javadoc">
598 <term><command>javadoc</command></term>
599 <listitem>
[a8d33f07]600 <para>parses the declarations and documentation comments in a
601 set of Java source files and produces a corresponding set of
602 HTML pages describing the classes, interfaces,constructors,
603 methods, and fields.</para>
[4378f935]604 <indexterm zone="jdk javadoc">
605 <primary sortas="b-javadoc">javadoc</primary>
606 </indexterm>
607 </listitem>
608 </varlistentry>
609
610 <varlistentry id="javah">
611 <term><command>javah</command></term>
612 <listitem>
[a8d33f07]613 <para>generates C header and source files
[4378f935]614 that are needed to implement native methods.</para>
615 <indexterm zone="jdk javah">
616 <primary sortas="b-javah">javah</primary>
617 </indexterm>
618 </listitem>
619 </varlistentry>
620
621 <varlistentry id="javap">
622 <term><command>javap</command></term>
623 <listitem>
[a8d33f07]624 <para>disassembles a Java class file.</para>
[4378f935]625 <indexterm zone="jdk javap">
626 <primary sortas="b-javap">javap</primary>
627 </indexterm>
628 </listitem>
629 </varlistentry>
630
[a8d33f07]631 <varlistentry id="java-rmi.cgi">
632 <term><command>java-rmi.cgi</command></term>
633 <listitem>
634 <para>is the Java RMI client.</para>
635 <indexterm zone="jdk java-rmi.cgi">
636 <primary sortas="b-java-rmi.cgi">java-rmi.cgi</primary>
637 </indexterm>
638 </listitem>
639 </varlistentry>
640
[4378f935]641 <varlistentry id="javaws">
642 <term><command>javaws</command></term>
643 <listitem>
[a8d33f07]644 <para>launches Java application/applets hosted on a network.</para>
[4378f935]645 <indexterm zone="jdk javaws">
646 <primary sortas="b-javaws">javaws</primary>
647 </indexterm>
648 </listitem>
649 </varlistentry>
650
[a8d33f07]651 <varlistentry id="jconsole">
652 <term><command>jconsole</command></term>
653 <listitem>
654 <para>is a graphical console tool to monitor and manage both
655 local and remote Java applications and virtual machines.</para>
656 <indexterm zone="jdk jconsole">
657 <primary sortas="b-jconsole">jconsole</primary>
658 </indexterm>
659 </listitem>
660 </varlistentry>
661
[4378f935]662 <varlistentry id="jdb">
663 <term><command>jdb</command></term>
664 <listitem>
[a8d33f07]665 <para>is a simple command-line debugger for Java classes.</para>
[4378f935]666 <indexterm zone="jdk jdb">
667 <primary sortas="b-jdb">jdb</primary>
668 </indexterm>
669 </listitem>
670 </varlistentry>
671
[a8d33f07]672 <varlistentry id="jhat">
673 <term><command>jhat</command></term>
674 <listitem>
675 <para>parses a java heap dump file and allows viewing
676 in a webbrowser.</para>
677 <indexterm zone="jdk jhat">
678 <primary sortas="b-jhat">jhat</primary>
679 </indexterm>
680 </listitem>
681 </varlistentry>
682
683 <varlistentry id="jinfo">
684 <term><command>jinfo</command></term>
685 <listitem>
686 <para>prints Java configuration information for a given Java
687 process, core file, or a remote debug server.</para>
688 <indexterm zone="jdk jinfo">
689 <primary sortas="b-jinfo">jinfo</primary>
690 </indexterm>
691 </listitem>
692 </varlistentry>
693
694 <varlistentry id="jmap">
695 <term><command>jmap</command></term>
696 <listitem>
697 <para>prints shared object memory maps or heap memory details
698 of a given process, core file, or a remote debug server.</para>
699 <indexterm zone="jdk jmap">
700 <primary sortas="b-jmap">jmap</primary>
701 </indexterm>
702 </listitem>
703 </varlistentry>
704
705 <varlistentry id="jps">
706 <term><command>jps</command></term>
707 <listitem>
708 <para>lists the instrumented JVMs on the target system.</para>
709 <indexterm zone="jdk jps">
710 <primary sortas="b-jps">jps</primary>
711 </indexterm>
712 </listitem>
713 </varlistentry>
714
715 <varlistentry id="jrunscript">
716 <term><command>jrunscript</command></term>
717 <listitem>
718 <para>is a command line script shell.</para>
719 <indexterm zone="jdk jrunscript">
720 <primary sortas="b-jrunscript">jrunscript</primary>
721 </indexterm>
722 </listitem>
723 </varlistentry>
724
725 <varlistentry id="jsadebugd">
726 <term><command>jsadebugd</command></term>
727 <listitem>
728 <para>attaches to a Java process or core file and acts as a
729 debug server.</para>
730 <indexterm zone="jdk jsadebugd">
731 <primary sortas="b-jsadebugd">jsadebugd</primary>
732 </indexterm>
733 </listitem>
734 </varlistentry>
735
736 <varlistentry id="jstack">
737 <term><command>jstack</command></term>
738 <listitem>
739 <para>prints Java stack traces of Java threads for a given
740 Java process, core file, or a remote debug server.</para>
741 <indexterm zone="jdk jstack">
742 <primary sortas="b-jstack">jstack</primary>
743 </indexterm>
744 </listitem>
745 </varlistentry>
746
747 <varlistentry id="jstat">
748 <term><command>jstat</command></term>
749 <listitem>
750 <para>displays performance statistics for an instrumented JVM.</para>
751 <indexterm zone="jdk jstat">
752 <primary sortas="b-jstat">jstat</primary>
753 </indexterm>
754 </listitem>
755 </varlistentry>
756
757 <varlistentry id="jstatd">
758 <term><command>jstatd</command></term>
759 <listitem>
760 <para>is an RMI server application that monitors for the creation
761 and termination of instrumented JVMs.</para>
762 <indexterm zone="jdk jstatd">
763 <primary sortas="b-jstatd">jstatd</primary>
764 </indexterm>
765 </listitem>
766 </varlistentry>
767
[4378f935]768 <varlistentry id="keytool">
769 <term><command>keytool</command></term>
770 <listitem>
771 <para>is a key and certificate management utility.</para>
772 <indexterm zone="jdk keytool">
773 <primary sortas="b-keytool">keytool</primary>
774 </indexterm>
775 </listitem>
776 </varlistentry>
777
778 <varlistentry id="native2ascii">
779 <term><command>native2ascii</command></term>
780 <listitem>
[dae2ba0b]781 <para> converts files that contain non-supported character encoding
[4378f935]782 into files containing Latin-1 or Unicode-encoded characters.</para>
783 <indexterm zone="jdk native2ascii">
784 <primary sortas="b-native2ascii">native2ascii</primary>
785 </indexterm>
786 </listitem>
787 </varlistentry>
788
789 <varlistentry id="orbd">
790 <term><command>orbd</command></term>
791 <listitem>
[dae2ba0b]792 <para>is used to enable clients to transparently locate and invoke
[4378f935]793 persistent objects on servers in the CORBA environment.</para>
794 <indexterm zone="jdk orbd">
795 <primary sortas="b-orbd">orbd</primary>
796 </indexterm>
797 </listitem>
798 </varlistentry>
799
[a8d33f07]800 <varlistentry id="pack200">
801 <term><command>pack200</command></term>
802 <listitem>
803 <para>is a Java application that transforms a jar file into a
804 compressed pack200 file using the Java gzip compressor.</para>
805 <indexterm zone="jdk pack200">
806 <primary sortas="b-pack200">pack200</primary>
807 </indexterm>
808 </listitem>
809 </varlistentry>
810
[4378f935]811 <varlistentry id="policytool">
812 <term><command>policytool</command></term>
813 <listitem>
814 <para>creates and manages a policy file graphically.</para>
815 <indexterm zone="jdk policytool">
816 <primary sortas="b-policytool">policytool</primary>
817 </indexterm>
818 </listitem>
819 </varlistentry>
820
821 <varlistentry id="rmic">
822 <term><command>rmic</command></term>
823 <listitem>
[dae2ba0b]824 <para>generates stub and skeleton class files for remote objects
[a8d33f07]825 from the names of compiled Java classes that contain remote
826 object implementations.</para>
[4378f935]827 <indexterm zone="jdk rmic">
828 <primary sortas="b-rmic">rmic</primary>
829 </indexterm>
830 </listitem>
831 </varlistentry>
832
833 <varlistentry id="rmid">
834 <term><command>rmid</command></term>
835 <listitem>
836 <para>starts the activation system daemon.</para>
837 <indexterm zone="jdk rmid">
838 <primary sortas="b-rmid">rmid</primary>
839 </indexterm>
840 </listitem>
841 </varlistentry>
842
843 <varlistentry id="rmiregistry">
844 <term><command>rmiregistry</command></term>
845 <listitem>
[dae2ba0b]846 <para>creates and starts a remote object registry on the specified
[4378f935]847 port on the current host.</para>
848 <indexterm zone="jdk rmiregistry">
849 <primary sortas="b-rmiregistry">rmiregistry</primary>
850 </indexterm>
851 </listitem>
852 </varlistentry>
853
[a8d33f07]854 <varlistentry id="schemagen">
855 <term><command>schemagen</command></term>
856 <listitem>
857 <para>is a Java XML binding schema generator.</para>
858 <indexterm zone="jdk schemagen">
859 <primary sortas="b-schemagen">schemagen</primary>
860 </indexterm>
861 </listitem>
862 </varlistentry>
863
[4378f935]864 <varlistentry id="serialver">
865 <term><command>serialver</command></term>
866 <listitem>
[dae2ba0b]867 <para>returns the serialVersionUID for one or more classes in a
[4378f935]868 form suitable for copying into an evolving class.</para>
869 <indexterm zone="jdk serialver">
870 <primary sortas="b-serialver">serialver</primary>
871 </indexterm>
872 </listitem>
873 </varlistentry>
874
875 <varlistentry id="servertool">
876 <term><command>servertool</command></term>
877 <listitem>
[dae2ba0b]878 <para>provides an ease-of-use interface for application programmers
[4378f935]879 to register, unregister, startup and shutdown a server.</para>
880 <indexterm zone="jdk servertool">
881 <primary sortas="b-servertool">servertool</primary>
882 </indexterm>
883 </listitem>
884 </varlistentry>
885
886 <varlistentry id="tnameserv">
887 <term><command>tnameserv</command></term>
888 <listitem>
[a8d33f07]889 <para>starts the Java IDL name server.</para>
[4378f935]890 <indexterm zone="jdk tnameserv">
891 <primary sortas="b-tnameserv">tnameserv</primary>
892 </indexterm>
893 </listitem>
894 </varlistentry>
895
[a8d33f07]896 <varlistentry id="unpack200">
897 <term><command>unpack200</command></term>
898 <listitem>
899 <para>is a native implementation that transforms a packed file
900 produced by <application>pack200</application> into a jar
901 file.</para>
902 <indexterm zone="jdk unpack200">
903 <primary sortas="b-unpack200">unpack200</primary>
904 </indexterm>
905 </listitem>
906 </varlistentry>
907
908 <varlistentry id="wsgen">
909 <term><command>wsgen</command></term>
910 <listitem>
911 <para>generates JAX-WS portable artifacts used in JAX-WS
912 web services.</para>
913 <indexterm zone="jdk wsgen">
914 <primary sortas="b-wsgen">wsgen</primary>
915 </indexterm>
916 </listitem>
917 </varlistentry>
918
919 <varlistentry id="wsimport">
920 <term><command>wsimport</command></term>
921 <listitem>
922 <para>generates JAX-WS portable artifacts.</para>
923 <indexterm zone="jdk wsimport">
924 <primary sortas="b-wsimport">wsimport</primary>
925 </indexterm>
926 </listitem>
927 </varlistentry>
928
929 <varlistentry id="xjc">
930 <term><command>xjc</command></term>
931 <listitem>
932 <para>is a Java XML binding compiler.</para>
933 <indexterm zone="jdk xjc">
934 <primary sortas="b-xjc">xjc</primary>
935 </indexterm>
936 </listitem>
937 </varlistentry>
938
[4378f935]939 </variablelist>
940
941 </sect2>
[74c1100]942
943</sect1>
Note: See TracBrowser for help on using the repository browser.