Skip to main content

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.

Jump to: navigation, search

Linux Tools Project/LTTng Eclipse Plug-in Development Environment Setup

< Linux Tools Project
Revision as of 01:18, 22 February 2013 by Unnamed Poltroon (Talk) (Don't explicitely require EGit. Also, how to use git/EGit is outside of the scope of this guide)

This page describes how to setup LTTng Eclipse Plug-in development environment.

Note that this should only be required if you want to make modifications to the code or contribute patches. If you only want to run the plugin as a user, you would probably be better served by the stable or nightly builds, available on this page.

Get the Eclipse SDK

Under eclipse.org downloads, select the Eclipse Classic archive. You can start with any Eclipse pre-package, but make sure you have the Eclipse Plug-in Development Environment feature installed.

Uncompress and start Eclipse. Example for Linux:

$ tar xzvf eclipse-SDK-4.2-linux-gtk-x86_64.tar.gz
$ cd eclipse
$ ./eclipse

The first time you run it, it will ask for a workspace directory. You can use the default location.

Install dependencies

Two dependencies are required: Remote System Explorer (RSE) and ANTLR. Here is how to install them. Note that RSE is in the project named Target Management on the Eclipse website.

  • RSE
    • Select "Help -> Install New Software..."
    • Select the current Eclipse release repository (e.g. Juno)
    • Select "General Purpose Tools -> Remote System Explorer End-User Runtime"
    • Install the package. It's not necessary to restart Eclipse at this point.
  • ANTLR
    • Select "Help -> Install New Software..." again
    • Click on "Available Software Sites"
    • Search for the Orbit repository. If it is not present in the list, add the following URL manually:
    • Click OK, then select the Orbit repository in the drop-down list.
    • Select "All Orbit Bundles" -> "ANTLR Runtime"
    • Install the package.
    • Restart Eclipse.

Get the source code for org.eclipse.linuxtools

First, make sure you have a Git client installed (either the git command-line tool, or the EGit plugin, also available in Eclipse's "Install New Software").

Then, simply clone the following repository somewhere on your hard drive:

Import LTTng projects into the workspace

  • Select "File -> Import..."
  • Select "General -> Existing Projects into Workspace"
  • Next to "Select root directory" click "Browse..."
  • Navigate to the directory where you git clone'd the project earlier.
  • Select the lttng/ subdirectory and click OK.
  • It should now list the available plugins. Make sure they are all checked and click "Finish".

Define an API baseline (optional)

Since Linux Tools is now out of incubation, all API changes have to be tracked and marked with the proper @since annotations. The Eclipse API tool works by comparing the contents of the current workspace with a clean, separate installation of Eclipse in another directory (the "baseline").

If you will only be using this setup to run the latest git code, you can decide to ignore these errors by performing these steps:

  • Select "Window -> Preferences -> Plug-in Development -> API Baselines"
  • Under "Options -> Missing API baseline:" select "Ignore"
  • Click "OK"


However, if you intend of hacking at the code and contributing patches, then you are strongly encouraged to setup a baseline installation correctly:

Download the baseline install

  • Go to http://eclipse.org/downloads and download a copy of the Eclipse IDE for C/C++ Developers, if you don't already have one.
  • Extract it in a directory somewhere, separate from your normal Eclipse installation. We will call this new installation the baseline.

Update the baseline

The baseline needs to be updated with the latest version of Linux Tools. Intermediate releases might not be part of the base Eclipse install, so they have to be downloaded from the update site.

  • Run your baseline installation of Eclipse (cd to its directory and run ./eclipse).
  • Dismiss the splash screen and go to "Help -> Install New Software".
  • In the new window, click on the Available Software Sites link at the top.
  • In the following window, check the box next to the Linux Tools repository. If it's not present, you can add it, the URL is:
  • Click OK until you go back to the first window, then on the drop-down menu, select --All Available Sites--.
  • In the list, open the Linux Tools subtree, and check all the LTTng * features.
  • Click Next, Next, Finish. The new versions of the plugins will be downloaded and installed.
  • Eclipse will offer to restart at this point. It might be a good idea to restart and make sure that the correct versions are installed.

Once you are done, close the baseline Eclipse. You should never have to run this installation, other than to update it.

Set up your regular Eclipse to use the baseline

  • In your regular Eclipse install, go to "Window -> Preferences -> Plug-in Development -> API Baselines".
  • Click on "Add Baseline..."
  • In the new window click "Browse...", and point it to the directory of the baseline Eclipse install you set up earlier.
  • Give your baseline a name, then click "Finish".

Once that is done, your workspace will be rebuilt and the API changes will now be tracked. Any new method or class will have to be annotated with "@since n", where n is the major.minor version number found in the plugin's MANIFEST.MF file.

Run (or Debug) the plugins

To run (or debug) the code, start a nested Eclipse with the plugins loaded:

  • Select "Run -> Run Configurations" (or Debug -> Debug Configurations)
  • Select "Eclipse Application"
  • Click "New launch configuration"
  • Rename the configuration (e.g. "Eclipse Application")
  • Select "Program to Run -> Run a product -> org.eclipse.sdk.ide" or "Run an application -> org.eclipse.ui.ide.workbench"
  • Click Run (or Debug)

The next time you can just select "Eclipse Application" from the Run (or Debug) button menu.

Back to the top