doc/building.md
changeset 49159 436f1e03fd04
parent 48743 ba52fa7bbf14
child 49234 3375a8039fde
equal deleted inserted replaced
49158:f62d1d1c2d9c 49159:436f1e03fd04
   399 "boot JDK". The boot JDK does not have to be OpenJDK, though. If you are
   399 "boot JDK". The boot JDK does not have to be OpenJDK, though. If you are
   400 porting OpenJDK to a new platform, chances are that there already exists
   400 porting OpenJDK to a new platform, chances are that there already exists
   401 another JDK for that platform that is usable as boot JDK.
   401 another JDK for that platform that is usable as boot JDK.
   402 
   402 
   403 The rule of thumb is that the boot JDK for building JDK major version *N*
   403 The rule of thumb is that the boot JDK for building JDK major version *N*
   404 should be an JDK of major version *N-1*, so for building JDK 9 a JDK 8 would be
   404 should be a JDK of major version *N-1*, so for building JDK 9 a JDK 8 would be
   405 suitable as boot JDK. However, OpenJDK should be able to "build itself", so an
   405 suitable as boot JDK. However, OpenJDK should be able to "build itself", so an
   406 up-to-date build of the current OpenJDK source is an acceptable alternative. If
   406 up-to-date build of the current OpenJDK source is an acceptable alternative. If
   407 you are following the *N-1* rule, make sure you got the latest update version,
   407 you are following the *N-1* rule, make sure you've got the latest update
   408 since JDK 8 GA might not be able to build JDK 9 on all platforms.
   408 version, since JDK 8 GA might not be able to build JDK 9 on all platforms.
       
   409 
       
   410 Early in the release cycle, version *N-1* may not yet have been released. In
       
   411 that case, the preferred boot JDK will be version *N-2* until version *N-1*
       
   412 is available.
   409 
   413 
   410 If the Boot JDK is not automatically detected, or the wrong JDK is picked, use
   414 If the Boot JDK is not automatically detected, or the wrong JDK is picked, use
   411 `--with-boot-jdk` to point to the JDK to use.
   415 `--with-boot-jdk` to point to the JDK to use.
   412 
   416 
   413 ### JDK 8 on Linux
   417 ### Getting JDK binaries
   414 
   418 
   415 On apt-based distros (like Debian and Ubuntu), `sudo apt-get install
   419 OpenJDK binaries for Linux, Windows and macOS can be downloaded from
   416 openjdk-8-jdk` is typically enough to install OpenJDK 8. On rpm-based distros
   420 [jdk.java.net](http://jdk.java.net). An alternative is to download the
   417 (like Fedora and Red Hat), try `sudo yum install java-1.8.0-openjdk-devel`.
   421 [Oracle JDK](http://www.oracle.com/technetwork/java/javase/downloads). Another
   418 
   422 is the [Adopt OpenJDK Project](https://adoptopenjdk.net/), which publishes
   419 ### JDK 8 on Windows
   423 experimental prebuilt binaries for various platforms.
   420 
   424 
   421 No pre-compiled binaries of OpenJDK 8 are readily available for Windows at the
   425 On Linux you can also get OpenJDK from the Linux distribution. On apt-based
   422 time of writing. An alternative is to download the [Oracle JDK](
   426 distros (like Debian and Ubuntu), `sudo apt-get install openjdk-<VERSION>-jdk`
   423 http://www.oracle.com/technetwork/java/javase/downloads). Another is the [Adopt
   427 is typically enough to install OpenJDK \<VERSION\>. On rpm-based distros (like
   424 OpenJDK Project](https://adoptopenjdk.net/), which publishes experimental
   428 Fedora and Red Hat), try `sudo yum install java-<VERSION>-openjdk-devel`.
   425 prebuilt binaries for Windows.
       
   426 
       
   427 ### JDK 8 on macOS
       
   428 
       
   429 No pre-compiled binaries of OpenJDK 8 are readily available for macOS at the
       
   430 time of writing. An alternative is to download the [Oracle JDK](
       
   431 http://www.oracle.com/technetwork/java/javase/downloads), or to install it
       
   432 using `brew cask install java`. Another option is the [Adopt OpenJDK Project](
       
   433 https://adoptopenjdk.net/), which publishes experimental prebuilt binaries for
       
   434 macOS.
       
   435 
       
   436 ### JDK 8 on AIX
       
   437 
       
   438 No pre-compiled binaries of OpenJDK 8 are readily available for AIX at the
       
   439 time of writing. A starting point for working with OpenJDK on AIX is
       
   440 the [PowerPC/AIX Port Project](http://openjdk.java.net/projects/ppc-aix-port/).
       
   441 
   429 
   442 ## External Library Requirements
   430 ## External Library Requirements
   443 
   431 
   444 Different platforms require different external libraries. In general, libraries
   432 Different platforms require different external libraries. In general, libraries
   445 are not optional - that is, they are either required or not used.
   433 are not optional - that is, they are either required or not used.