./README-builds.html

Print this page




  48                         <li><a href="#fedora">Fedora Linux</a> </li>
  49                         <li><a href="#centos">CentOS Linux</a> </li>
  50                         <li><a href="#debian">Debian GNU/Linux</a></li>
  51                         <li><a href="#ubuntu">Ubuntu Linux</a> </li>
  52                         <li><a href="#opensuse">OpenSUSE</a></li>
  53                         <li><a href="#mandriva">Mandriva</a></li>
  54                         <li><a href="#opensolaris">OpenSolaris</a></li>
  55                     </ul>
  56                 </li>
  57                 <li><a href="#directories">Source Directory Structure</a> 
  58                     <ul>
  59                         <li><a href="#drops">Managing the Source Drops</a></li>
  60                     </ul>
  61                 </li>
  62                 <li><a href="#building">Build Information</a>
  63                     <ul>
  64                         <li><a href="#gmake">GNU Make (<tt><i>gmake</i></tt>)</a> </li>
  65                         <li><a href="#linux">Basic Linux System Setup</a> </li>
  66                         <li><a href="#solaris">Basic Solaris System Setup</a> </li>
  67                         <li><a href="#windows">Basic Windows System Setup</a> </li>

  68                         <li><a href="#dependencies">Build Dependencies</a>
  69                             <ul>
  70                                 <li><a href="#bootjdk">Bootstrap JDK</a> </li>
  71                                 <li><a href="#importjdk">Optional Import JDK</a> </li>
  72                                 <li><a href="#ant">Ant 1.7.1</a> </li>
  73                                 <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
  74                                 <li><a href="#compilers">Compilers</a>
  75                                     <ul>
  76                                         <li><a href="#msvc32">Microsoft Visual Studio Professional/Express for 32 bit</a> </li>
  77                                         <li><a href="#msvc64">Microsoft Visual Studio Professional for 64 bit</a> </li>
  78                                         <li><a href="#mssdk64">Microsoft Windows SDK for 64 bit</a> </li>
  79                                         <li><a href="#gcc">Linux gcc/binutils</a> </li>
  80                                         <li><a href="#studio">Sun Studio</a> </li>
  81                                     </ul>
  82                                 </li>
  83                                 <li><a href="#zip">Zip and Unzip</a> </li>
  84                                 <li><a href="#freetype">FreeType2 Fonts</a> </li>
  85                                 <li>Linux and Solaris:
  86                                     <ul>
  87                                         <li><a href="#cups">CUPS Include files</a> </li>


 213                         <td>JDK 6u18</td>
 214                     </tr>
 215                     <tr>
 216                         <td>Solaris X64 (64-bit)</td>
 217                         <td>Solaris 10 Update 6</td>
 218                         <td>Sun Studio 12 Update 1 + patches</td>
 219                         <td>JDK 6u18</td>
 220                     </tr>
 221                     <tr>
 222                         <td>Windows X86 (32-bit)</td>
 223                         <td>Windows XP</td>
 224                         <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
 225                         <td>JDK 6u18</td>
 226                     </tr>
 227                     <tr>
 228                         <td>Windows X64 (64-bit)</td>
 229                         <td>Windows Server 2003 - Enterprise x64 Edition</td>
 230                         <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
 231                         <td>JDK 6u18</td>
 232                     </tr>






 233                 </tbody>
 234             </table>
 235             <p>
 236             These same sources do indeed build on many more systems than the
 237             above older generation systems, again the above is just a minimum.
 238             <p>
 239             Compilation problems with newer or different C/C++ compilers is a
 240             common problem.
 241             Similarly, compilation problems related to changes to the
 242                 <tt>/usr/include</tt> or system header files is also a
 243             common problem with newer or unreleased OS versions.
 244             Please report these types of problems as bugs so that they
 245             can be dealt with accordingly.
 246         </blockquote>
 247         <!-- ------------------------------------------------------ -->
 248         <hr>
 249         <h2><a name="SDBE">Specific Developer Build Environments</a></h2>
 250         <blockquote>
 251             We won't be listing all the possible environments, but
 252             we will try to provide what information we have available to us.


 934                     <a href="#msvc32">Microsoft Visual Studio Compilers</a>).
 935                 </li>
 936                 <li>
 937                     Setup all environment variables for compilers 
 938                     (see <a href="#msvc32">compilers</a>).
 939                 </li>
 940                 <li>
 941                     Install 
 942                     <a href="#dxsdk">Microsoft DirectX SDK</a>.
 943                 </li>
 944                 <li>
 945                     Install
 946                     <a href="#ant">Ant 1.7.1 or newer</a>,
 947                     make sure it is in your PATH and set
 948                     <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
 949                 </li>
 950             </ol>
 951         </blockquote>
 952         <!-- ------------------------------------------------------ -->
 953         <hr>






























 954         <h3><a name="dependencies">Build Dependencies</a></h3>
 955         <blockquote>
 956             Depending on the platform, the OpenJDK build process has some basic
 957             dependencies on components not part of the OpenJDK sources.
 958             Some of these are specific to a platform, some even specific to
 959             an architecture.
 960             Each dependency will have a set of ALT variables that can be set
 961             to tell the makefiles where to locate the component.
 962             In most cases setting these ALT variables may not be necessary
 963             and the makefiles will find defaults on the system in standard
 964             install locations or through component specific variables.
 965             <!-- ------------------------------------------------------ -->
 966             <h4><a name="bootjdk">Bootstrap JDK</a></h4>
 967             <blockquote>
 968                 All OpenJDK builds require access to the previously released 
 969                 JDK 6, this is often called a bootstrap JDK.
 970                 The JDK 6 binaries can be downloaded from Sun's 
 971                 <a href="http://java.sun.com/javase/downloads/index.jsp"
 972                    target="_blank">JDK 6 download site</a>.
 973                 For build performance reasons


1177                     an unbundled Windows SDK but this is no longer necessary if
1178                     you have VS2010 Professional.
1179                 </blockquote>
1180                 <strong><a name="mssdk64">Windows x64: Microsoft Windows 7.1 SDK 64 bit compilers.</a></strong>
1181                 For a free alternative for 64 bit builds, use the 7.1 SDK.
1182                 Microsoft say that to set up your paths for this run
1183                 <pre>
1184     c:\Program Files\Microsoft SDKs\Windows\v7.1\bin\setenv.cmd /x64.
1185                 </pre>
1186                 What was tested is just directly setting up LIB, INCLUDE,
1187                 PATH and based on the installation directories using the
1188                 DOS short name appropriate for the system, (you will
1189                 need to set them for yours, not just blindly copy this) eg :
1190                 <pre>
1191     set VSINSTALLDIR=c:\PROGRA~2\MICROS~1.0
1192     set WindowsSdkDir=c:\PROGRA~1\MICROS~1\Windows\v7.1
1193     set PATH=%VSINSTALLDIR%\vc\bin\amd64;%VSINSTALLDIR%\Common7\IDE;%WindowsSdkDir%\bin;%PATH%
1194     set INCLUDE=%VSINSTALLDIR%\vc\include;%WindowsSdkDir%\include
1195     set LIB=%VSINSTALLDIR%\vc\lib\amd64;%WindowsSdkDir%\lib\x64
1196                 </pre>




1197             </blockquote>
1198             <!-- ------------------------------------------------------ --> 
1199             <h4><a name="zip">Zip and Unzip</a></h4>
1200             <blockquote>
1201                 Version 2.2 (November 3rd 1997) or newer of the zip utility 
1202                 and version 5.12 or newer of the unzip utility is needed 
1203                 to build the JDK.
1204                 With Solaris, Linux, and Windows CYGWIN, the zip and unzip
1205                 utilities installed on the system should be fine.
1206                 Information and the source code for
1207                 ZIP.EXE and UNZIP.EXE is available on the
1208                 <a href="http://www.info-zip.org" 
1209                    target="_blank">info-zip web site</a>.
1210             </blockquote>
1211             <!-- ------------------------------------------------------ -->
1212             <h4><a name="cups">Common UNIX Printing System (CUPS) Headers (Solaris &amp; Linux)</a></h4>
1213             <blockquote>
1214                 <strong>Solaris:</strong>
1215                 CUPS header files are required for building the 
1216                 OpenJDK on Solaris.




  48                         <li><a href="#fedora">Fedora Linux</a> </li>
  49                         <li><a href="#centos">CentOS Linux</a> </li>
  50                         <li><a href="#debian">Debian GNU/Linux</a></li>
  51                         <li><a href="#ubuntu">Ubuntu Linux</a> </li>
  52                         <li><a href="#opensuse">OpenSUSE</a></li>
  53                         <li><a href="#mandriva">Mandriva</a></li>
  54                         <li><a href="#opensolaris">OpenSolaris</a></li>
  55                     </ul>
  56                 </li>
  57                 <li><a href="#directories">Source Directory Structure</a> 
  58                     <ul>
  59                         <li><a href="#drops">Managing the Source Drops</a></li>
  60                     </ul>
  61                 </li>
  62                 <li><a href="#building">Build Information</a>
  63                     <ul>
  64                         <li><a href="#gmake">GNU Make (<tt><i>gmake</i></tt>)</a> </li>
  65                         <li><a href="#linux">Basic Linux System Setup</a> </li>
  66                         <li><a href="#solaris">Basic Solaris System Setup</a> </li>
  67                         <li><a href="#windows">Basic Windows System Setup</a> </li>
  68                         <li><a href="#macosx">Basic Mac OS X System Setup</a></li>
  69                         <li><a href="#dependencies">Build Dependencies</a>
  70                             <ul>
  71                                 <li><a href="#bootjdk">Bootstrap JDK</a> </li>
  72                                 <li><a href="#importjdk">Optional Import JDK</a> </li>
  73                                 <li><a href="#ant">Ant 1.7.1</a> </li>
  74                                 <li><a href="#cacerts">Certificate Authority File (cacert)</a> </li>
  75                                 <li><a href="#compilers">Compilers</a>
  76                                     <ul>
  77                                         <li><a href="#msvc32">Microsoft Visual Studio Professional/Express for 32 bit</a> </li>
  78                                         <li><a href="#msvc64">Microsoft Visual Studio Professional for 64 bit</a> </li>
  79                                         <li><a href="#mssdk64">Microsoft Windows SDK for 64 bit</a> </li>
  80                                         <li><a href="#gcc">Linux gcc/binutils</a> </li>
  81                                         <li><a href="#studio">Sun Studio</a> </li>
  82                                     </ul>
  83                                 </li>
  84                                 <li><a href="#zip">Zip and Unzip</a> </li>
  85                                 <li><a href="#freetype">FreeType2 Fonts</a> </li>
  86                                 <li>Linux and Solaris:
  87                                     <ul>
  88                                         <li><a href="#cups">CUPS Include files</a> </li>


 214                         <td>JDK 6u18</td>
 215                     </tr>
 216                     <tr>
 217                         <td>Solaris X64 (64-bit)</td>
 218                         <td>Solaris 10 Update 6</td>
 219                         <td>Sun Studio 12 Update 1 + patches</td>
 220                         <td>JDK 6u18</td>
 221                     </tr>
 222                     <tr>
 223                         <td>Windows X86 (32-bit)</td>
 224                         <td>Windows XP</td>
 225                         <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
 226                         <td>JDK 6u18</td>
 227                     </tr>
 228                     <tr>
 229                         <td>Windows X64 (64-bit)</td>
 230                         <td>Windows Server 2003 - Enterprise x64 Edition</td>
 231                         <td>Microsoft Visual Studio C++ 2010 Professional Edition</td>
 232                         <td>JDK 6u18</td>
 233                     </tr>
 234                     <tr>
 235                         <td>Mac OS X X64 (64-bit)</td>
 236                         <td>Mac OS X 10.7.3 "Lion"</td>
 237                         <td>XCode 4.1 or later</td>
 238                         <td>Java for OS X Lion Update 1</td>
 239                     </tr>
 240                 </tbody>
 241             </table>
 242             <p>
 243             These same sources do indeed build on many more systems than the
 244             above older generation systems, again the above is just a minimum.
 245             <p>
 246             Compilation problems with newer or different C/C++ compilers is a
 247             common problem.
 248             Similarly, compilation problems related to changes to the
 249                 <tt>/usr/include</tt> or system header files is also a
 250             common problem with newer or unreleased OS versions.
 251             Please report these types of problems as bugs so that they
 252             can be dealt with accordingly.
 253         </blockquote>
 254         <!-- ------------------------------------------------------ -->
 255         <hr>
 256         <h2><a name="SDBE">Specific Developer Build Environments</a></h2>
 257         <blockquote>
 258             We won't be listing all the possible environments, but
 259             we will try to provide what information we have available to us.


 941                     <a href="#msvc32">Microsoft Visual Studio Compilers</a>).
 942                 </li>
 943                 <li>
 944                     Setup all environment variables for compilers 
 945                     (see <a href="#msvc32">compilers</a>).
 946                 </li>
 947                 <li>
 948                     Install 
 949                     <a href="#dxsdk">Microsoft DirectX SDK</a>.
 950                 </li>
 951                 <li>
 952                     Install
 953                     <a href="#ant">Ant 1.7.1 or newer</a>,
 954                     make sure it is in your PATH and set
 955                     <tt><a href="#ANT_HOME">ANT_HOME</a></tt>.
 956                 </li>
 957             </ol>
 958         </blockquote>
 959         <!-- ------------------------------------------------------ -->
 960         <hr>
 961         <h3><a name="macosx">Basic Mac OS X System Setup</a></h3>
 962         <blockquote> 
 963             <strong>X64 only:</strong>
 964             The minimum recommended hardware for building
 965             the Mac OS X version is any 64-bit capable Intel processor, at least 2
 966             GB of RAM, and approximately 3 GB of free disk space. You should also
 967             have OS X Lion 10.7.3 installed.
 968         </blockquote>
 969         <!-- ------------------------------------------------------ -->
 970 
 971         <h4><a name="macosx_checklist">Basic Mac OS X Check List</a></h4>
 972         <blockquote>
 973             <ol>
 974                 <li>
 975                     Install <a href="https://developer.apple.com/xcode/">XCode 4.1</a> or newer. 
 976                     If you install XCode 4.3 or newer, make sure you also install 
 977                     "Command line tools" found under the preferences pane "Downloads".
 978                 </li>
 979                 <li>
 980                     Install <a href="http://support.apple.com/kb/dl1421" target="_blank">"Java for OS X Lion Update 1"</a>, 
 981                     set <tt><a href="#ALT_BOOTDIR">ALT_BOOTDIR</a> to <code>`/usr/libexec/java_home -v 1.6`</code></tt>
 982                 </li>
 983                 <li>
 984                     <a href="#importjdk">Optional Import JDK</a>, set
 985                     <tt><a href="#ALT_JDK_IMPORT_PATH">ALT_JDK_IMPORT_PATH</a></tt>.
 986                 </li>
 987             </ol>
 988         </blockquote>
 989         <!-- ------------------------------------------------------ -->
 990         <hr>
 991         <h3><a name="dependencies">Build Dependencies</a></h3>
 992         <blockquote>
 993             Depending on the platform, the OpenJDK build process has some basic
 994             dependencies on components not part of the OpenJDK sources.
 995             Some of these are specific to a platform, some even specific to
 996             an architecture.
 997             Each dependency will have a set of ALT variables that can be set
 998             to tell the makefiles where to locate the component.
 999             In most cases setting these ALT variables may not be necessary
1000             and the makefiles will find defaults on the system in standard
1001             install locations or through component specific variables.
1002             <!-- ------------------------------------------------------ -->
1003             <h4><a name="bootjdk">Bootstrap JDK</a></h4>
1004             <blockquote>
1005                 All OpenJDK builds require access to the previously released 
1006                 JDK 6, this is often called a bootstrap JDK.
1007                 The JDK 6 binaries can be downloaded from Sun's 
1008                 <a href="http://java.sun.com/javase/downloads/index.jsp"
1009                    target="_blank">JDK 6 download site</a>.
1010                 For build performance reasons


1214                     an unbundled Windows SDK but this is no longer necessary if
1215                     you have VS2010 Professional.
1216                 </blockquote>
1217                 <strong><a name="mssdk64">Windows x64: Microsoft Windows 7.1 SDK 64 bit compilers.</a></strong>
1218                 For a free alternative for 64 bit builds, use the 7.1 SDK.
1219                 Microsoft say that to set up your paths for this run
1220                 <pre>
1221     c:\Program Files\Microsoft SDKs\Windows\v7.1\bin\setenv.cmd /x64.
1222                 </pre>
1223                 What was tested is just directly setting up LIB, INCLUDE,
1224                 PATH and based on the installation directories using the
1225                 DOS short name appropriate for the system, (you will
1226                 need to set them for yours, not just blindly copy this) eg :
1227                 <pre>
1228     set VSINSTALLDIR=c:\PROGRA~2\MICROS~1.0
1229     set WindowsSdkDir=c:\PROGRA~1\MICROS~1\Windows\v7.1
1230     set PATH=%VSINSTALLDIR%\vc\bin\amd64;%VSINSTALLDIR%\Common7\IDE;%WindowsSdkDir%\bin;%PATH%
1231     set INCLUDE=%VSINSTALLDIR%\vc\include;%WindowsSdkDir%\include
1232     set LIB=%VSINSTALLDIR%\vc\lib\amd64;%WindowsSdkDir%\lib\x64
1233                 </pre>
1234                 <strong><a name="llvmgcc">OS X Lion 10.7.3: LLVM GCC</a></strong>
1235                 <blockquote>
1236                    LLVM GCC is bundled with XCode. The version should be at least 4.2.1.
1237                 </blockquote>
1238             </blockquote>
1239             <!-- ------------------------------------------------------ --> 
1240             <h4><a name="zip">Zip and Unzip</a></h4>
1241             <blockquote>
1242                 Version 2.2 (November 3rd 1997) or newer of the zip utility 
1243                 and version 5.12 or newer of the unzip utility is needed 
1244                 to build the JDK.
1245                 With Solaris, Linux, and Windows CYGWIN, the zip and unzip
1246                 utilities installed on the system should be fine.
1247                 Information and the source code for
1248                 ZIP.EXE and UNZIP.EXE is available on the
1249                 <a href="http://www.info-zip.org" 
1250                    target="_blank">info-zip web site</a>.
1251             </blockquote>
1252             <!-- ------------------------------------------------------ -->
1253             <h4><a name="cups">Common UNIX Printing System (CUPS) Headers (Solaris &amp; Linux)</a></h4>
1254             <blockquote>
1255                 <strong>Solaris:</strong>
1256                 CUPS header files are required for building the 
1257                 OpenJDK on Solaris.