Java

Windows Build Instructions

JavaTM 2 SDK, Standard Edition, v1.4.1 fcs

Build Overview

Contents

Introduction

This README file contains build instructions for the JavaTM 2 SDK, Standard Edition, v1.4.1 (J2SDK 1.4.1) Community Source Release. Building the source code for the Java 2 SDK requires a high level of technical expertise. Sun provides the source code primarily for technical experts who want to conduct research, port the platform to new operating systems and hardware, or add enhancements that require access to platform internals. If you are not a technical professional in one of these categories, this release is probably not for you.

Windows System Setup

The official build platform for the J2SDK 1.4.1 is Windows NT 4.0 with Service Pack 5 or greater installed.

The minimum recommended hardware for building the Windows version is a Pentium class processor or better, at least 256 megabytes of RAM, and approximately 600 MB of free disk space.

Windows Build Tools and Libraries Setup

Once the Windows OS is set up, you will need to install additional tools and libraries for building the J2SDK.

Microsoft Visual C++ Compiler

The Microsoft Visual C++ 6.0 Professional Edition compiler, with Visual C++ 6.0 Service Pack 3 installed (not Service Pack 4), is required for building the J2SDK. The compiler and other tools are expected to reside in the locations defined by the variables MSVCDir and MSDEVDir, which are set by the setup utility VCVARS32.BAT (usually found in C:\Program Files\Microsoft Visual Studio\VC98\Bin\). It is highly recommended that you run VCVARS32.BAT to set MSVCDir, MSDEVDir, INCLUDE, LIB, and the PATH prior to building the J2SDK. If your compiler resides in a place other than the default, you can set ALT_COMPILER_PATH to point to the location of the cl compiler binary, and ALT_MSDEVTOOLS_PATH to point to the location of the development tools. The compiler and tools binaries must be in the PATH.

MKS Unix Command Binaries

The J2SDK build requires access to Unix command binaries supplied by MKS Toolkit version 6.1a or later. Information about the MKS Toolkit can be obtained from the MKS website at http://www.mks.com. If the binaries are not installed in C:\mksnt\, set the ALT_UNIXCOMMAND_PATH environment variable to their location.

Bootstrap J2SDK

You will need access to a J2SDK 1.4.0 for Windows installation. The 1.4.0 binaries can be downloaded from Sun's J2SDK 1.4.0 download site. Set ALT_BOOTDIR to point to the location of the bootstrap J2SDK installation, and place its bin directory in the PATH.

GNU Make

GNU make version 3.78.1 or later, built for the MKS shell per the instructions in its documentation, is required to build the J2SDK. Information on GNU make, and access to ftp download sites, are available on the GNU make web site. Place the location of the GNU make binary in the PATH.

Zip and Unzip

ZIP.EXE and UNZIP.EXE should be installed in C:\UTILS. If you have them installed elsewhere set the environment variable ALT_DEVTOOLS_PATH to their location.

cacerts

A certificates file named "cacerts" represents a system-wide keystore with CA certificates. In J2SDK and JRE binary bundles, the "cacerts" file contains root CA certificates from several public CAs (e.g., VeriSign, Thawte, and Baltimore).

The source bundles contain a cacerts file without CA root certificates. J2SDK builders will need to secure permission from each public CA and include the certficates into their own custom cacerts file. Failure to provide a populated cacerts file will result in verification of a certificat chain during runtime.

The ALT_CACERTS_FILE should be set to point to the location of the populated cacerts file.

Mozilla Headers and Libraries

Note: the Java Plug-in product for Windows cannot be built from the Community Source Release. This section applies only to those with a separate source license for that product.

Mozilla headers and libraries are required for building Java Plug-in. As a convenience, the source bundles include an archive of these files. Unpack the archive into a directory similar to the one shown below, and set the ALT_MOZILLA_PATH environment variable to the absolute path of the top-level directory.

            +- devtools\                (set ALT_MOZILLA_PATH to this level)
               +- win32\
               |    +- plugin\
               |         +- mozilla_libs_ns610\
               |   
               +- share\
                    +- plugin\
                         +- mozilla_headers_ns610.win32\
        
The name of the top-level directory is not significant; it is not required to be named devtools.

Windows Build Environment Variables

This section describes environment variables that you can set to influence various aspects of the build. Some of these variables are mentioned specifically in the setup and build instructions above. Others you may set at your discretion.

Environment variables may be set in the shell environment or on the GNU make command line.

PATH
Set the PATH to contain:
  • The location of the GNU make binary
  • The location of the MKS Unix command binaries (see ALT_UNIXCOMMAND_PATH below)
  • The location of the J2SDK bootstrap installation (see ALT_BOOTDIR below)
  • The locations of the Windows NT system commands (usually C:\WINNT and C:\WINNT\system32)

In addition, execute the setup utility VCVARS32.BAT.

ALT_BOOTDIR
The location of the J2SDK 1.4.0 bootstrap installation.

ALT_OUTPUTDIR
An override for specifying the (absolute) path of where the build output is to go.

ALT_UNIXCOMMAND_PATH
An override for specifying the location of the MKS Unix command binaries, needed only if they are not installed in C:\mksnt\

ALT_COMPILER_PATH
An override for specifying the location of the Microsoft Visual C++ compiler. By default the build uses a path based on MSVCDir, which is set by the VCVARS32.BAT setup utility.

ALT_MSDEVTOOLS_PATH
An override for specifying the location of the Microsoft Visual C++ development tools. By default the build uses a path based on MSDEVDir, which is set by the VCVARS32.BAT setup utility.

ALT_DEVTOOLS_PATH
The location of the zip and unzip binaries. See Zip and Unzip for details.

ALT_CACERTS_FILE
The location of the cacerts file. See cacerts file for details.

ALT_MOZILLA_PATH
The location of the Mozilla headers and libraries, needed only if building Java Plug-in.

MILESTONE
The milestone name for the build (e.g. "beta").

BUILD_NUMBER
The build number for the build (e.g. "b27").

DEV_ONLY
This is set to indicate that no attempt should be made to build certain components that are not required for development builds.
The following environment variables should not be set:

Windows Build

  1. cd into the control/make directory.
  2. Start the build with the command:
        gnumake all DEV_ONLY=true [ALT_OUTPUTDIR=directory-name-for-output] [MILESTONE=milestone_name] [BUILD_NUMBER=build_number] [other "ALT_" overrides]

Copyright 2002 Sun Microsystems, Inc., 901 San Antonio Road, Palo Alto, California 94303, U.S.A.
All rights reserved.

Sun