Overview

OpenJDK unofficial installers for Windows, Linux and Mac OS X

OpenJDK 7 update 40 (IcedTea 2.4.1) downloads

Other OpenJDK builds

Downloads description

Note: description represents information about current builds (on the top of the page). For previous builds (on the bottom of the page) please see description, linked near them

Source code

Binaries were built from OpenJDK7 source code with IcedTea patches.

Build platforms

OpenJDK project has "minimum build environments" (MBE) that should generate most-compatible binaries - OpenJDK7 MBE, Mac OS X MBE.

Build environments used for these binaries:

  • windows-i586: Windows XP SP3 and Windows 7.1 SDK (MBE - 7.1 SDK has the same compilers as VS2010)
  • windows-amd64: Windows Server 2003 Enterprise x64 Edition and Windows 7.1 SDK (MBE)
  • macosx-x86_64: Mac OS X 10.7.5 Lion and XCode 4.3.2 (GCC 4.2.1) (almost MBE, 10.7.5 instead of 10.7.3)
  • linux-i586: Debian 5.0 Lenny and GCC 4.3.2 (MBE)
  • linux-amd64: Debian 5.0 Lenny and GCC 4.3.2 (MBE)

FreeType

On Linux and Mac OS X system prebuilt freetype libraries are used. On windows, libraries (.dll and .lib) were built from version 2.4.10 as release-multithreaded using the same compilers as openjdk itself.

Simple header patch was applied for all builds.

CA certificates

OpenJDK source code contains empty cacerts file, that may cause troubles working with HTTPS (trustAnchors error). These builds contain cacerts file generated with script from obuildfactory project.

Unlimited cryptography

These builds use unlimited cryptography policy files by default.

Debug symbols

Binaries were stripped from debug symbols. To build binaries with debug symbols, remove FULL_DEBUG_SYMBOLS=0 build environment variable, see this issue for additional info.

Installers

Installers were built using IzPack installer. Installers contain JDK files (JRE may be installed separately) and uninstallers. Installers for all platforms contain exactly the same content: jre directory, izpack's install.jar and install executable launcher. With default settings installers do not require administrator privileges.

Installers may add JAVA_HOME environment variable and adjust user PATH variable on all platforms. On Windows global PATH variable and Windows Registry are also supported (see this issue) but may require administrator privileges.

Native launchers

install and uninstall native launchers (with .exe on windows) were built using jar-launcher. They run install.jar and uninstall.jar using bundled JRE.

Zip images

ZIP downloads (*-image.zip files) contain zipped JDK files (contents of j2sdk-server-image) without any changes.

Mac OS X application bundle

Mac OS X downloads additionally contain application bundle (*-bundle.zip) and installation script for local user install.

Build Process (manual builds)

Linux and Mac OS X builds

Linux and Mac builds are quite easy:

  • install build dependencies on your linux or mac box
  • download cacerts and rhino jar from this project
  • set environment variables base on build-linux-* or build-macosx-x86_64.sh files (comment out script launch at the bottom)
  • got to openjdk sources root and run make

Windows builds

Windows build is more comlicated than linux and mac ones. It is described in official build doc.

This git repository contains tools, libraries and build environment .bat scripts.

Microsoft compiler toolchains and DirectX SDK cannot be distributed on github because of legal reasons, so some prerequisites installation required.

DirectX libraries

Microsoft DirectX 9.0 SDK (Summer 2004) is used in all windows builds. It was available on microsoft.com (I've dowload it there in November 2012), but it may be not available now. It may be found online on other sites. File details:

  • name: dxsdk_sum2004.exe
  • size: 239008008
  • sha1: 73d875b97591f48707c38ec0dbc63982ff45c661

After installation DirectX files should be put into libs/directx directory, files list.

Microsoft compilers

OpenJDK7 i586 builds should work on 32-bit Windows XP and later, amd64 builds - on 64-bit Windows 2003 and later.

Both i586 and amd64 versions of OpenJDK7 may be built using the same Windows 7.1 SDK (you'll need some additional files for amd64). SDK files should be copied into utils/winsdk71 and may be used as standalone toolchain on completely clean windows box:

  • install Windows SDK 7.1 for x86_32, available at microsoft.com, GRMSDK_EN_DVD.iso file, sha1: cde254e83677c34c8fd509d6b733c32002fe3572
  • install Windows SDK 7.1 for x86_64, the same link as above, GRMSDKX_EN_DVD.iso file, sha1: 9203529f5f70d556a60c37f118a95214e6d10b5a on another x64 windows box
  • copy Visual Studio files (shipped with SDK) to utils/winsdk71/vs2010e, files list
  • copy SDK x86_32 files to utils/winsdk71/sdk, files list
  • copy Bin/x64 directory from SDK x64 installation to utils/utils/winsdk71/sdk/Bin/x64

JDK7 compiler

JDK7 is required to build OpenJDK7 with IcedTea patches. OpenJDK version or Oracle one should be installed.

Run build

  • adjust build-windows-* script - remove make-and-bundle.sh launch at the bottom, uncomment simple bash launch
  • launch build-windows-* script
  • cd to openjdk7 sources root
  • run chmod -R 777 . to fix source files permissions (not always required, see this thread)
  • run make

Create installer

To create IzPack installer for newly built j2sdk-server-image run this command from the same Cygwin console:

openjdk-unofficial-builds/installer/build-installer.sh path/to/openjdk_sources_root

You may edit IzPack installer descriptor and attendant files for corresponding platform in installer/<platform> directory.

izpack-launcher wrapper is used to launch Izpack installer build. IzPack standalone compiler also may be used without this wrapper.

Build Process (auto builds)

Note: auto build setup is complex, if you have troubles with it feel free to email me (email address is in github profile)

Host environment

Linux or mac should be used as a host:

  • create user obf
  • setup virtualbox bridged network interface
  • download host files
  • download and setup ssh keys from build factory
  • copy openjdk sources to host directory as openjdk.zip
  • copy this project sources to host directory as oub.zip (directx and microsoft compilers should be added to source tree beforehand, as listed above)

Virtual machines

Note: it may be not legal to use Mac OS X guest on non-mac hosts - SO link

  • install OS into VirtualBox machine using IDE virtual controller
  • create user obf
  • windows only: enable auto-login for obf user: 1, 2, 3, 4
  • windows only: download build factory files into c:\obf and run bootstrap.bat - SSH server (copssh GPL), and obf_build windows service will be set up
  • linux/mac only: install build dependencies as listed above
  • linux/mac only: install OpenSSH and setup ssh keys from [build factory](https://github.com/alexkasko/openjdk-unofficial-builds/tree/master/obf/copssh]
  • ensure that now under obf user you can ssh into guest and into host back as ssh <address> without usernames and passwords
  • upload jdk7 into guest as /home/obf/jdk7 (c:\obf\jdk7 on windows)
  • put prepared virtual machine hard disks into machines directory as xz archive

Run build

To run build for a single platform use:

. jdk7-<platform>.env
./build.sh

Live build output will be written to build.log.

To run build for a multiple platform use:

./start.sh

Output also will be tailed to console.

Distributions will be placed into dist directory.

License information

OpenJDK binaries are released under the GNU GPL v. 2 with classpath exception.

Build scipts were written by me and released under the Apache License 2.0.

Other sources and binaries in this repository (cygwin, freetype etc.) are released under their corresponding licenses.

Previous downloads

See project descreption corresponding to these downloads here

Windows downloads

  • OpenJDK 6 build 27:
  • i586 installer, sha1: 3333818dcdfb2ca352d16db0fdf0fee12fa3f1a9
  • i586 zip, sha1: 9086e424bb2ab4e4dbdf0527b8b0426a9672dda5
  • amd64 installer, sha1: e3d81f85282724b1239346922b9b60cf3fb24477
  • amd64 zip, sha1: 80ca8e04fe518c54fe7d20d412429621b31975ee
  • OpenJDK 7 update 6 build 24:
  • i586 installer, sha1: c6bfea90a555aa2379c462462439010886b623e0
  • i586 zip, sha1: c6d6610f1cb76d725a88194959e91134db1064d8
  • amd64 installer, sha1: 893bca878a5ae2e85f98e1db1207c546d50b2137
  • amd64 zip, sha1: f2591ededff2d4133a1b4990837c32183cc8dc3e

Mac OS X downloads

  • OpenJDK 7 update 6 build 24:
  • amd64 installer, sha1: ca10f8d15e16b61185b28375ddbfb02ca1857757
  • amd64 zip, sha1: d8935284bd9977ea558cc1ba18cfeb10f21b4ba9

Linux downloads

  • OpenJDK 6 build 27:
  • i586 installer, sha1: 8c9a03767c7a46cc7eb076939b62e060b9be46b7
  • i586 zip, sha1: 552d4fe523d972992a431fe74c0362b21e3b84df
  • amd64 installer, sha1: 5585aeb36e890e99cf1acf999b737455144bb3b0
  • amd64 zip, sha1: 4617e7c3252492f110c90f85a332452a537dfbeb
  • OpenJDK 7 update 6 build 24:
  • i586 installer, sha1: 2e1bf4f2bd2081caa420f491f159637ebea53a70
  • i586 zip, sha1: 28e5cdf1aebcb8ce86f19a2760be45150bc93482
  • amd64 installer, sha1: 17309c97774182e160124af733b623384dafd161
  • amd64 zip, sha1: 8f2dafad7ee4202df70b2a3d357ac213ecdc2616

Changelog

2013-08-19

  • 7u40 2.4.1 released

  • fully automated builds

2012-12-08

  • initial public version