deep

a Cross Development Platform for Java

User Tools

Site Tools


crosscompiler:deep_projects

This is an old revision of the document!


Create and manage deep projects

When creating new projects all the necessary settings will be written automatically in a configuration file (PROJECTNAME.deep in the root folder of the project). This file can also be manually edited to change project settings or to add more library files.

The deep project file

A typical deep project file looks like this:

#deep-1

meta {
	version = "Sun May 26 16:05:42 CEST 2013";
	description = "deep project file for Test1";
}

project Test1 {
	libpath = "I:\deep\lib";
	boardtype = ntbMpc555HB;
	ostype = ntbSTS;
	programmertype = ntbMpc555UsbBdi;

#	enter names of rootclasses, e.g.
#	rootclasses = "test.MyFirstTestClass","other.MySecondTestClass";
	rootclasses = "test.TestClass1";
}

All lines starting with # are comments. Also the first line which is optional, it only helps the system to choose the right parser for the file.

The meta paragraph contains only some informations about the file, but remind, that both assignments are necessary. More interesting is the second paragraph project, which contains all informations about the deep-Project.

Library path

The library path must be carefully set up. It can consist of several strings. For each path the directory bin is added to the path. At this resulting location the configuration files and the class files must be found.
It is possible as well to choose a jar-file as library path.
If some of the configuration files are located in the current project, this current project must also be added to the library path. If several paths and/or jar-files are given, the search order for any given class file is in the order of the given paths. Some examples:

  libpath = "I:\deep\lib"; # network drive
  libpath = "../ch.ntb.inf.deep.trglib","../ch.ntb.inf.junitTarget; # local
  libpath = "C:/Program Files/Java/jre6/lib/rt.jar","I:\deep\lib"; # jar file
  libpath = "I:\deep\lib","M:\EUser\runtime-EclipseApplication\Test"; # local project

Board

The type of the board must be specified. The compiler has to know where to place code and variables and what type of architecture to compile for.

  boardtype = ntbMpc555HB;

Programmer

The Programmer declaration is optional, if no programmer is given, deep will not automatically download the image to the target board.

  programmertype = ntbMpc555UsbBdi;

Target operating system

Choose an operating system with

  ostype = ntbSTS;

Image file

It is possible to write an image file to disk. This might be useful for further processing or debugging. Currently only the binary image file format is supported.

  imgfile = "D:\temp\myFile.bin";
  imgformat = binary;

Rootclasses

At least one rootclass must be specified. If several rootclasses are used the list must be comma separated.

  rootclasses = "test.MyFirstTestClass","other.MySecondTestClass";

Opening Deep Perspective

Opening the deep perspective (Window → Open Perspective) gives you a set of views appropriate for deep development. It also enables the deep project creation wizard.

Setting Project Properties

Instead of editing the deep project file manually the settings can be altered by choosing Project → Properties. Alternatively you can press the right mouse button on the project name in the package explorer:

Editing Run Configurations

All the run configurations of all projects in a workspace can be edited with Properties - > Run/Debug Settings.
With Run/Debug setting you can choose which run configuration of the chosen board you want to run. All the available run configuration (must be defined in the board description file) are listed. One of them can be chosen.

Renaming Deep Projects

Refactoring is a very powerful tool in the eclipse framework. You can rename a deep project by choosing a project in the package explorer and pressing Shift+Alt+R. The project together with its associated deep project file will be renamed.

Setting Deep Preferences

The default values for new projects such as library path, board type, os type and programmer can be set in the deep preferences. This is done as follows.

crosscompiler/deep_projects.1426263069.txt.gz · Last modified: 2016/02/25 13:33 (external edit)