Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Linux Tools Project/Eclipse Build"
(→Prerequisites for building with eclipse-build) |
|||
Line 8: | Line 8: | ||
* bash, sh, perl, sed, below requirements for particular distro | * bash, sh, perl, sed, below requirements for particular distro | ||
* At least 3 GB of storage available | * At least 3 GB of storage available | ||
+ | * Xvnc if you want the tests to run and not touch your main display ([https://bugs.eclipse.org/bugs/show_bug.cgi?id=291680 Debian xvfb version in the works]) | ||
== How To build Eclipse SDK with eclipse-build released tarballs == | == How To build Eclipse SDK with eclipse-build released tarballs == |
Revision as of 14:25, 8 October 2009
{{#eclipseproject:technology.linux-distros}}
Eclipse-build aims to ease the building of the Eclipse SDK for Linux distributions.
Contents
- 1 Prerequisites for building with eclipse-build
- 2 How To build Eclipse SDK with eclipse-build released tarballs
- 3 How to build Eclipse SDK from checked out eclipse-build trunk
- 4 Submitting patches
- 5 Debian/Ubuntu Build Requirements (not including dependencies)
- 6 Fedora Build Requirements (not including dependencies)
- 7 Dependencies (these are Fedora package names, let's make them generic)
- 8 To-do list
- 9 Testing
Prerequisites for building with eclipse-build
- A 1.6 JDK installed in a standard place (see build.properties)
- Ant version 1.7.1 or newer
- bash, sh, perl, sed, below requirements for particular distro
- At least 3 GB of storage available
- Xvnc if you want the tests to run and not touch your main display (Debian xvfb version in the works)
How To build Eclipse SDK with eclipse-build released tarballs
- Download the latest eclipse-build*.tar.gz (R0_4* work with 3.5.1, R0_3* work with 3.5.0)
- Extract the downloaded eclipse-build*.tar.gz
- Download Eclipse 3.5.1 SDK sources (3.5.0) in the eclipse-build* directory. NOTE: eclipse-build provides source tarball created from the same tag as the official releases but with additional sources needed for the build.
- Optional: download the test sources and test scripts (3.5.0 test sources, 3.5.0 test scripts).
- Run ./build.sh
If the build finishes without error there will be a build/eclipse-$YOUR_BUILD_ID-fetched-src/installation directory containing a ready to use Eclipse SDK.
Eclipse-build is verified to work on x86, x86_64 and ppc architectures. Additionally, a ppc64 build is provided in Fedora with additional patches which are not migrated to eclipse-build yet. Eclipse-build has been successfully tested on Fedora 11 and Debian unstable.
Optional: ant -DbuildArch={x86 OR x86_64 OR ppc} runTests. Look for test results (a few hours running time) in testResults-<timestamp>/html/org.eclipse.sdk.tests.html.
How to build Eclipse SDK from checked out eclipse-build trunk
- The following SVN commands can easily be replaced with checking things out in Eclipse (say, with this handy PSF (help on PSFs)). The command-line actions afterwards can be executed from a terminal. It is preferred that patches are generated from within Eclipse. All patches must be submitted via http://bugs.eclipse.org eclipse.org bugzila
- svn co http://dev.eclipse.org/svnroot/technology/org.eclipse.linuxtools/eclipse-build/trunk/eclipse-build
- svn co http://dev.eclipse.org/svnroot/technology/org.eclipse.linuxtools/eclipse-build/trunk/eclipse-build-config
- svn co http://dev.eclipse.org/svnroot/technology/org.eclipse.linuxtools/eclipse-build/trunk/eclipse-build-feature
- cd eclipse-build
- ln -s ../eclipse-build-config
- ln -s ../eclipse-build-feature
- Download Eclipse 3.5.1 SDK sources (3.5.0) (put them in the eclipse-build directory)
- Optional: download the test sources and test scripts (3.5.0 test sources, 3.5.0 test scripts).
- Run ./build.sh
- Check for successful build in build/eclipse-$YOUR_BUILD_ID-fetched-src/installation
- Optional: ant -DbuildArch={x86 OR x86_64 OR ppc} runTests. Look for test results (a few hours running time) in testResults-${timestamp}/html/org.eclipse.sdk.tests.html.
Submitting patches
- Check out from SVN (PSF (help on PSFs), location)
- It is preferred that patches are generated from within Eclipse. All patches must be submitted via http://bugs.eclipse.org eclipse.org bugzila
Debian/Ubuntu Build Requirements (not including dependencies)
- ant (>= 1.7.1)
- ant-optional
- default-jdk
- libatk1.0-dev
- libcairo2-dev
- libgl1-mesa-dev | libgl-dev
- libglu1-mesa-dev | libglu-dev
- libgnomeui-dev
- libgnome-vfsmm-2.6-dev
- libgtk2.0-dev
- libicu4j-java (>= 4.0.1) [*]
- liblucene2-java
- libpango1.0-dev
- libxtst-dev
- lsb-release
- pkg-config
- sharutils
- unzip
- xulrunner-dev
- zip
On Ubuntu 9.10 "Karmic Koala" (and later) you can simply run "sudo apt-get build-dep eclipse" to install those packages.
[*] Not packaged yet.
NB: This list does not include packages required to build the Debian package nor "essential" build packages (like build-essential).
Fedora Build Requirements (not including dependencies)
- ant
- cairo >= 1.0
- gcc
- gcc-c++
- gecko-devel >= 1.9
- glib2-devel
- gnome-vfs2-devel
- gtk2-devel
- java-devel >= 1.6.0
- java-javadoc
- libgnome-devel
- libgnomeui-devel
- libXt-devel
- libXtst-devel
- make
- mesa-libGL-devel
- mesa-libGLU-devel
- nspr-devel
- xulrunner-devel-unstable
Note: On Fedora, just run yum build-dep eclipse to get the build dependencies (including the dependencies to which the Fedora package is symlinked).
Dependencies (these are Fedora package names, let's make them generic)
- ant
- ant-antlr
- ant-apache-bcel
- ant-apache-bsf
- ant-apache-log4j
- ant-apache-oro
- ant-apache-regexp
- ant-apache-resolver
- ant-commons-logging
- ant-commons-net
- ant-javamail
- ant-jdepend
- ant-jsch
- ant-junit
- ant-nodeps
- ant-swing
- ant-trax
- cairo >= 1.0
- desktop-file-utils
- gcc
- gcc-c++
- gecko-devel >= 1.9
- glib2-devel
- gnome-vfs2-devel
- gtk2-devel
- icu4j-eclipse >= 1:4.0.1-3
- jakarta-commons-beanutils
- jakarta-commons-codec
- jakarta-commons-collections
- jakarta-commons-dbcp
- jakarta-commons-digester
- jakarta-commons-el >= 1.0-9
- jakarta-commons-fileupload
- jakarta-commons-httpclient
- jakarta-commons-launcher
- jakarta-commons-logging >= 1.0.4-6jpp.3
- jakarta-commons-modeler
- jakarta-commons-pool
- java-devel >= 1.6.0
- java-javadoc
- jetty >= 5.1.14-1.6
- jpackage-utils >= 0:1.5
- jsch >= 0:0.1.41
- junit >= 3.8.1-3jpp
- junit4
- libgnome-devel
- libgnomeui-devel
- libXt-devel
- libXtst-devel
- lucene >= 2.3.1-3.4
- lucene-contrib >= 2.3.1-3.4
- make
- mesa-libGL-devel
- mesa-libGLU-devel
- mx4j >= 2.1
- nspr-devel
- objectweb-asm
- regexp
- sat4j >= 2.1.0-1
- tomcat5-jasper-eclipse >= 5.5.27-6.3
- tomcat6-servlet-2.5-api >= 6.0.18-9.2
- unzip
- xulrunner-devel-unstable
To-do list
- See eclipse-build open bugs
- Add an item
- In Eclipse bugzilla, watch linux.packagingtools-inbox@eclipse.org if you want to be notified of new bugs
Planned items
-
Add ant install target similar to 'make install' procedure -
Run the tests - Provision every feature separately so we can move them in dropins
- Add ability to build only given feature e.g org.eclipse.swt (Maybe)
Testing
See tests for how to build and run the SDK tests and to report results and check if others are working on common failures.