OpenEmbedded Tools for Eclipse (OTE)

= Overview =
OpenEmbedded Tools for Eclipse (OTE) is a set of Eclipse plugins to make using OpenEmbedded from within Eclipse possible. This page describes a set of workflows that perform common OpenEmbedded tasks, as well as the current state of development of the plugins.
= Status =
OTE is in a beta form. Functionality present within the plugins should work well, but development on them is fairly new. Bugs are expected!
== Changelog ==
=== 0.8.5===
Bug Fixes 
* Invalid thread access in console view when starting build. 
* No longer use "-b" option in Bitbake to specify build recipe, due to 
problems in Bitbake. 
Features 
* Deprecate outdated Bug Labs Linux installer option. 
* Update OpenEmbedded Dev installer option with newer bitbake and 
configuration variables. 
Known Issues 
* "Import recipe as project" feature relies on "bitbake -b" option. 
In recent Bitbake versions, this feature is broken, so the Eclipse 
action is also broken. 
=== 0.7.0 ===
* Numerous fixes in Create Project Wizard to sync to latest OE-Dev install.
== License ==
OTE is licensed under the Eclipse Public License (EPL). 
== Source ==
Sources are available at svn://svn.buglabs.net/ote/trunk.
== Updatesite ==
The OTE updatesite, used to install the plugins from within Eclipse:
 http://bugcommunity.com/downloads/files/ote/updatesite/
= Workflow =
OTE is designed to facilitate a set of typical actions or tasks that an OE developer would do.
== Install OpenEmbedded ==
1. To install a new copy of OpenEmbedded, select the wizard from the File -> New... -> Other... menu.
2. Next, select the flavor of OpenEmbedded you wish to install.
3. Now specify configuration parameters. If fields are unfamiliar, leave the defaults and proceed.
4. Assuming all the necessary system tools are available, the wizard will download sources and configure your new OpenEmbedded install.
5. Now by clicking finish, an Eclipse project will be created. It may take a few moments for Eclipse to index all the files in the project. Your workbench should look something like this:
== Import Existing OE into Workspace ==
To access the Import Project wizard, select File -> Import... and select the Import OpenEmbedded Project wizard from the general dialog like so:
Next fill in the three fields required for importing the project. 
* Name: this is the name of the Eclipse project in your workspace and can be anything.
* Location: this is the base directory of your OpenEmbedded project.
* Init Script: this is the shell script that initializes OE environment variables and updates the path.
The final wizard page shows the output of what you would see in the terminal after executing bitbake -e.
After clicking finish a new project should be available in your workspace. Depending on your machine it may take some moments for Eclipse to scan the entire set of files. It is important to note that even though the project appears in your Eclipse workspace, the files are accessed from your OE project root. So, modifications to these files will be reflected in your existing OE install.
== Create Recipe ==
This simple wizard generates a template recipe file based on fields that are entered by the user. The wizard can be accessed via File -> New... and selecting New OpenEmbedded Recipe from the dialog. Here is what the wizard looks like:
Now by entering the fields and selecting Finish a new recipe will be generated. Note that currently the Location field must contain a valid directory, so if you're creating a completely new recipe you'll need to create the directory before running this wizard. Here is an example of a recipe filled out:
After clicking Finish Eclipse will open an editor on the generated file. Here is an example:
From here the user can add necessary details to the recipe for building.
== Edit Recipe ==
Recipes can be selected in the Navigator view by opening the recipes or packages directory in your OpenEmbedded install. Any file with a .bb, .inc or .conf extension will be loaded by the BitBake editor. This editor offers the following features.
=== Find Recipe ===
Eclipse offers a nice file selection dialog that allows for files to be quickly edited without navigating through many folders. This dialog is activated with ctrl-shift-r. The 'r' stands for resource, Eclipse terminology for a file. In this dialog begin typing the file you want to edit. Wildcards and regular expressions are supported. Previously edited files are already available. Here is a screenshot of the dialog:
=== Syntax Highlighting ===
The recipe file in the editor will color various sections of the recipe. For example comments will be green, variable declarations will be blue.
=== Variable Auto-Completion ===
Some conventional variables are available by hitting ctrl-space in the editor window. Here is a screenshot of the context menu:
=== Function Templates ===
The bitbake editor will create a template function or addtask declaration when selected from the ctrl-space menu.
=== Hover-over Variable Information ===
The bitbake editor will show the value of previously declared variables when the mouse is put over them. The appear as tooltip text. Here is an example of this feature:
== Build Recipe ==
A package can be generated from Eclipse via the toolbar or the context menu. This function essentially calls bitbake -b <selected package> to perform the build. The output of the bitbake command will be displayed in the console view.
== Import Recipe Sources as New Project ==
This allows application developers to create a source project from an OpenEmbedded recipe. This is a simple way to begin modifying a project from within Eclipse. Other Eclipse plugins such as CDT (C/C++ development tools) or PyDev (Python development tools) may be used with these imported projects. However automatic integration is not supported from within OTE and adding appropriate project natures will either need to be done from within the respective plugin or manually by editing the .project file in your project.
== Browse OE variables ==
OTE provides a quick way of viewing and searching through BitBake/OE variables. The wizard is activate from the OTE toolbar and looks like this:
= Contact =
Please see the OTE Google Group for questions or problems with OTE.
Category:User