Configuration Tool on Windows and Linux Quick Start

This section described the GUI based configuration tool. This tool is probably more suited to users who prefer GUI's. The next section describes a CLI based tool which Unix users may prefer.

Note that the use of the Configuration Tool is described in detail in Part III in eCos and eCosPro User Guide.

The Configuration Tool (see Figure 7-1) has five main elements: the configuration window, the conflicts window, the properties window, the short description window, and the output window.

Figure 7-1. Configuration Tool

Start by creating a new configuration for the default target and template of your installation and profile from the file menu File->New (<target>:<template>) (Ctrl+N).

Figure 7-2. File Menu

If you wish to select a different target and/or template, select from the file menu File->New Target (Alt+N) as illustrated in Figure 7-2 and the dialog illustrated in Figure 7-3 will be displayed.

Figure 7-3. Target and Template selection

Note: This method of switching differs from versions prior to eCosPro 4.0 where users were instructed to use the Template Dialog through the menu Build->Templates... (Ctrl+M). From version 4.0 this dialog is now only used to change the template of the current target and configuration. To switch an existing configuration to a different target see the Section called Switching Targets, Repositories and Versions in Chapter 15.

Make sure that the configuration is correct for the target in terms of Startup type and verify endianness, CPU model, etc. (see Figure 7-4).

Figure 7-4. Configuring for the target

Next, select the Build->Library (F7) menu item to start building eCos (see Figure 7-5). The application will configure the sources, prepare a build tree, and build the libtarget.a library, which contains the eCos kernel and other packages.

Figure 7-5. Selecting the Build Library menu item

The Save As dialog box will appear, asking you to specify a directory in which to place your save file. You can use the default, but it is a good idea to make a subdirectory, for example $HOME/ecos-work.

Caution

For historic reasons, due to prior limitations on Windows you are advised not to use spaces in filenames, directories or paths.

Figure 7-6. Save file dialog

When you build an eCos library the build (TARGET-gcc) and host tools set by the Profile will be used. A set of user-defined build tools may be selected, using Tools->Paths->Build Tools, to take precedence over these using the Build Tools dialog box as shown in Figure 7-7. You can select a location from the drop down list, browse to the directory using the Browse button, or type in the location of the build tools manually. As the build tools are architectural, this user-defined path will remain attached to the profile that was active when the path was set. When the profile is changed, this will change to the value previously associated with the new profile.

Figure 7-7. Build tools dialog

Similarly, a set of user-defined Host Tools may take precedence over the Profile's Host Tools using Tools->Paths->Host Tools (for commands such as make, cat and ls on Windows hosts and openocd on both Linux and Windows hosts) using the Host Tools dialog box shown in Figure 7-8. As with the Build Tools dialog, you can select a location from the drop down list, browse to the directory using the Browse button, or type in the location of the user tools manually. However, unlike the user-defined Build Tools, the user-defined Host tools are not associated with any Profile and will remain persistent between Profile's and different invocations of the eCos Configuration Tool.

Figure 7-8. Host tools dialog

Note: Both the Build Tools and User Tools form part of an eCosPro Profile so it is not normally necessary on eCosPro installations to enter paths to either tools. If you do enter paths for either, these will take preference to the Build and User Tools of the selected profile. In addition, on Linux, specifying Host Tool will often be unnecessary as the tools will already be on your PATH.

When a build has been invoked, the Configuration Tool configures the sources, prepares a build tree, and builds the libtarget.a library into an install tree, which contains:

  • the eCos kernel (libtarget.a library) and other libraries or packages

  • the include files to be referenced by the sources of your application

  • eCos configuration segments (.ecm files) that may be imported into the eCos configuration to enable a specific kernel, library or package behaviour

  • host tool configuration files which may be used by Eclipse, the eCos Configuration Tools or developer to either run or debug both tests and your application

The build tree will be created in the same directory the saved configuration (.ecc file) is located and will be given the same name as the configuration file, without the .ecc extension, and postfixed with _build. Similarly, the install tree will be created in the same directory as the saved configuration and build tree but will be postfixed with _install.

For example, if you create a configuration file myconfig.ecc in the directory C:\PlayPit, after a successful build you will have the following configuration file and its associated build and install subdirectories in C:\PlayPit

  • myconfig.ecc

  • myconfig_build

  • myconfig_install

The output from the configuration process and the building of libtarget.a will be shown in the output window.

Once the build process has finished you will have a kernel with other packages in the file libtarget.a located within the lib subdirectory of your install tree. You should now build the eCos tests for your particular configuration.

You can do this by selecting Build->Tests (Shift-F7). Notice that you could have selected Tests instead of Library in the earlier step and it would have built both the library and the tests, but this would increase the build time substantially, and if you do not need to build the tests it is unnecessary.

Figure 7-9. Selecting the Build Tests menu item

Chapter 8 will guide you through running one of the test cases you just built on the selected target, using GDB.

2017-02-09
Documentation license for this page: Open Publication License