|
|
(26 intermediate revisions by 4 users not shown) |
Line 1: |
Line 1: |
− | <h1>Running Eclipse Source builds for 3.5 (Source from CVS)</h1>
| + | #REDIRECT [[Platform-releng/Platform_Build]] |
− | | + | |
− | <h2>What is an Eclipse Source Build?</h2>
| + | |
− | | + | |
− | <p>Eclipse source builds provide developers with an automated method for checking out source code and other required resources, compiling the Java code, generating
| + | |
− | javadoc, and finally, creating a zip file of an Eclipse runtime from a downloaded source tree. The end result of a source build is a runnable Eclipse.</p>
| + | |
− | | + | |
− | <h2>Getting the Source</h2>
| + | |
− | <p>A source build download contains shell and ant scripts that fetch and build a particular version of Eclipse. Although you can manually edit build.xml files
| + | |
− | in each feature and plug-in, they are typically generated by the Eclipse pde-build plug-in. As a result you will need to download a fresh source build zip file
| + | |
− | when major changes occur to Eclipse source, such as the addition or removal of plug-ins. The version of Eclipse a particular source build will create is
| + | |
− | embedded in the source build zip file name. For example, eclipse-sourceBuild-I20030624.zip builds Eclipse from integration build 20030624.</p>
| + | |
− | | + | |
− | <p>Building Eclipse using Ant and a JDK</h2>
| + | |
− | <h4>Description</h4>
| + | |
− | <p>Produces an Eclipse SDK using the Java compiler you have installed.</p>
| + | |
− | <h4>System Requirements</h4><ol>
| + | |
− | <li>[http://ant.apache.org/ Ant 1.7.1] or higher</li>
| + | |
− | <li>[http://java.sun.com/javase/downloads/index.jsp 1.4, 1.5 and 1.6] JDKs</li>
| + | |
− | <li>[http://www.info-zip.org/pub/infozip Info-Zip] zip and unzip executables on system path. Tar for *nix distributions</li>
| + | |
− | <li>[http://ccvs.cvshome.org/servlets/ProjectDownloadList CVS 1.10] or higher</li>
| + | |
− | <li>1 GB free disk space</li>
| + | |
− | <li>Source build zip from <a href="http://www.eclipse.org/downloads">eclipse.org</a></li>
| + | |
− | <li>An Eclipse SDK build zip that matches that platform and buildId of the platform you're attempting to build. For instance, if you're building I20090611-1540 for linux.gtk.x86, you should download eclipse-SDK-I20090611-1540-linux-gtk.tar.gz to compile the build.</li>
| + | |
− | </ol>
| + | |
− | | + | |
− | <h4>Initial Setup</h4>
| + | |
− | | + | |
− | <p>Install Ant, 1.6 JDK, and a CVS client, as per each program's instructions. Minimally
| + | |
− | you will need the following environment variables set.</p>
| + | |
− | <ol>
| + | |
− | <li>Add the Ant bin directory, and the CVS executable to your path.</li>
| + | |
− | <li>Set the JAVA_HOME environment variable to the root of your <B>1.6 JDK</B> installation.</li>
| + | |
− | <li>Set the ANT_HOME environment variable to the root of your Ant installation.</li>
| + | |
− | <li>(Windows 98) Set the HOME environment variable to c:</li>
| + | |
− | <li>(Windows 98) Increase the default environment space as specified <a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;q230205">here</a>.</li></ol><h4>Run the Build</h4><ol>
| + | |
− | <li>Extract the eclipse-sourceBuild-*.zip to a directory. Extract using tar if using a *nix drop.</li>
| + | |
− | <li>Update the build.properties file included at the root of this zip to point to the bootstrap classpath of your 1.4, 1.5, and 1.6 JDK locations.</li>
| + | |
− | <li>cd to the buildScripts directory.</li><li>Execute <b>build -os <osType> -ws <windowSystemType> -arch <architecture>
| + | |
− | [-bc <bootclasspath>] [-target <target>]</b></li><p> </p><ol>
| + | |
− | <table width="75%" border="1">
| + | |
− | <tr>
| + | |
− | <td width="30%">Parameter Name</td><td width="70%">Description</td></tr>
| + | |
− | <tr>
| + | |
− | <td width="30%">osType</td><td width="70%">Target operating system (<a href="#build_platforms">See
| + | |
− | supported types</a>).</td></tr>
| + | |
− | <tr>
| + | |
− | <td width="30%">windowSystemType</td><td width="70%">Target windowing system (<a href="#build_platforms">See
| + | |
− | supported types</a>).</td></tr>
| + | |
− | <tr>
| + | |
− | <td width="30%">architecture</td><td width="70%">Target system architecture (<a href="#build_platforms">See
| + | |
− | supported types</a>).</td></tr>
| + | |
− | <td width="30%">bootclasspath (optional)</td><td width="70%">The default list of bootclasspath jars to compile against using
| + | |
− | either a colon or semi-colon as separators. The jars that make up a
| + | |
− | bootclasspath are part of any JDK or JRE. Typically this parameter is
| + | |
− | only specified if you are cross compiling Eclipse. The default is set to the
| + | |
− | jars in the JDK or JRE in JAVA_HOME.</td></tr>
| + | |
− | <td width="30%">target (optional)</td><td width="70%">
| + | |
− | <p>The Ant target from build.xml to execute. The default target is <b>run</b>
| + | |
− | and performs a complete fetch, build, javadoc build and install. Other
| + | |
− | valid targets are:</p><ul>
| + | |
− | <li>fetch</li><li>compile</li><li>install</li></ul></td></tr>
| + | |
− | </table></ol><blockquote>
| + | |
− | <p> </p></blockquote></ol><p><b>Install Eclipse</b></p><p>When the Eclipse build is complete, there will be a zip file called</p><p><osType>-<windowSystemType>-<architecture>-sdk.zip</p><p>in the results subdirectory of your build directory. If you are building for Linux or Mac, there will be a tar.gz file. </p></p>
| + | |
− | | + | |
− | <p>Extract this file to the directory where you would like to run Eclipse. If
| + | |
− | you extract it to your root directory, a directory called eclipse will be created.
| + | |
− | </p><p>Run Eclipse with the <a href="http://help.eclipse.org/help21/index.jsp?topic=/org.eclipse.platform.doc.user/tasks/running_eclipse.htm">desired
| + | |
− | command line parameters</a>.</p><br>
| + | |
− | | + | |
− | <h2>Supported Platforms</h2>
| + | |
− | | + | |
− | <p>Eclipse can be built on any of the following platforms. With some <a href="#limitations">limitations</a>
| + | |
− | any platform can be used to build Eclipse for any or all supported platforms. To see the latest information on the platforms supported for a given release, refer to the latest <a href="http://www.eclipse.org/eclipse/development/">project plan</a></p>
| + | |
− | <table width="40%" border="1">
| + | |
− | <tr>
| + | |
− | <td width="48%">Operating System (os)</td>
| + | |
− | <td width="52%">Windowing System (ws)</td>
| + | |
− | <td width="52%">Archecture</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">win32</td>
| + | |
− | <td width="52%">win32</td>
| + | |
− | <td width="52%">x86</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">win32</td>
| + | |
− | <td width="52%">wpf</td>
| + | |
− | <td width="52%">x86</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">linux</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">x86</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">linux</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">x86_64</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">linux</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">ppc</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">macosx</td>
| + | |
− | <td width="52%">carbon</td>
| + | |
− | <td width="52%">ppc</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">macosx</td>
| + | |
− | <td width="52%">cocoa</td>
| + | |
− | <td width="52%">x86</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">macosx</td>
| + | |
− | <td width="52%">cocoa</td>
| + | |
− | <td width="52%">x86_64</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">aix</td>
| + | |
− | <td width="52%">motif</td>
| + | |
− | <td width="52%">ppc</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">solaris</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">sparc</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">linux</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">s390</td>
| + | |
− | </tr>
| + | |
− | <tr>
| + | |
− | <td width="48%">linux</td>
| + | |
− | <td width="52%">gtk</td>
| + | |
− | <td width="52%">s390x</td>
| + | |
− | </tr>
| + | |
− | </table>
| + | |
− | | + | |
− | <h2>Known Limitations </h2><ol>
| + | |
− | <li>Building unix flavours of Eclipse on Windows will result in incorrect file permissions. The *.so, *.sl, and Eclipse executable files will not have
| + | |
− | execute permissions. In addition, linux-motif and linux-gtk builds will not have soft links to libXm.so.2.1 in the installation root directory. In these
| + | |
− | cases you would have to write an install or post install script to set permissions properly. (UNIX builds built on UNIX systems will set sufficient permissions
| + | |
− | and make the appropriate soft links).</li><li>Only Java source code is compiled. *.dll, *so, *sl and Eclipse executables are all checked out of dev.eclipse.org prebuilt in this build process. The instructions on <a href="http://www.eclipse.org/swt/faq.php#buildeclipseexe">recompiling
| + | |
− | the eclipse executable</a> and <a href="http://www.eclipse.org/swt/faq.php#howbuilddll">recompiling
| + | |
− | the swt libraries</a> available in the <a href="http://www.eclipse.org/swt/faq.php">SWT
| + | |
− | FAQ</a> are also a useful reference. This document also includes a list of the prerequisites <a href="http://www.eclipse.org/swt/faq.php#gtkstartup">for
| + | |
− | running SWT on Linux GTK</a> </li>
| + | |
− | <li>For the platforms where JDK 1.6 support is not yet available e.g linux-gtk-s390, linux-gtk-s390x the Eclipse SDK can be built with JDK
| + | |
− | 1.5 in place JDK 1.6. To do that, please follow the following steps:<p></p><ul><li>Edit
| + | |
− | the file build.xml: replacing the tags <property name="javacSource"
| + | |
− | value="1.6"> with <property name="javacSource" value="1.5">
| + | |
− | and <property name="javacTarget" value="1.6"> with <property
| + | |
− | name="javacTarget" value="1.5"></li><li>Remove code which compile
| + | |
− | and package the plugins that require JDK 1.6 currently:
| + | |
− | org.eclipse.jdt.compiler.tool, org.eclipse.jdt.compiler.apt and
| + | |
− | org.eclipse.jdt.apt.pluggable.core from the files
| + | |
− | features/org.eclipse.jdt/feature.xml and
| + | |
− | features/org.eclipse.jdt/feature.xml. </li><property name="javacSource" value="1.4">
| + | |