1 <!-- Copyright (C) 2003 Red Hat, Inc. -->
2 <!-- This material may be distributed only subject to the terms -->
3 <!-- and conditions set forth in the Open Publication License, v1.0 -->
4 <!-- or later (the latest version is presently available at -->
5 <!-- http://www.opencontent.org/openpub/). -->
6 <!-- Distribution of the work or derivative of the work in any -->
7 <!-- standard (paper) book form is prohibited unless prior -->
8 <!-- permission is obtained from the copyright holder. -->
12 >Ecosconfig on Windows and Linux Quick Start</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
19 TITLE="eCos User Guide"
20 HREF="ecos-user-guide.html"><LINK
22 TITLE="Configuring and Building eCos from Source"
23 HREF="configuring-and-building-ecos-from-source.html"><LINK
25 TITLE="Configuration Tool on Windows and Linux Quick Start"
26 HREF="using-configtool-windows-linux.html"><LINK
28 TITLE="Running an eCos Test Case"
29 HREF="running-an-ecos-test-case.html"></HEAD
40 SUMMARY="Header navigation table"
57 HREF="using-configtool-windows-linux.html"
65 >Chapter 11. Configuring and Building <SPAN
74 HREF="running-an-ecos-test-case.html"
88 NAME="USING-ECOSCONFIG-ON-LINUX">Ecosconfig on Windows and Linux Quick Start</H1
90 >As an alternative to using the graphical
93 >Configuration Tool</SPAN
94 >, it is still possible to
95 configure and build a kernel by editing a configuration file manually
101 >Manual configuration and the <B
105 described in detail in <A
106 HREF="manual-configuration.html"
113 > command you need to start a
114 shell. In Windows you need to start a
124 >The following instructions assume that the
132 environment variables have been setup correctly as described in <A
133 HREF="user-guide-installation-linux.html"
135 >. They also assume Linux
136 usage but equally well apply to Windows running Cygwin.</P
142 choose a directory in which to work. For the purposes of this tutorial,
143 the default path will be <TT
152 Create this directory and change to it by typing: </P
160 CLASS="PROGRAMLISTING"
177 >To see what options can be used with <B
189 CLASS="PROGRAMLISTING"
190 >$ ecosconfig --help</PRE
195 >The available packages, targets and templates may be listed
204 CLASS="PROGRAMLISTING"
205 >$ ecosconfig list</PRE
210 >Here is sample output from <B
214 the usage message.</P
220 >Example 11-1. Getting help from ecosconfig</B
229 CLASS="PROGRAMLISTING"
231 Usage: ecosconfig [ qualifier ... ] [ command ]
233 list : list repository contents
234 new TARGET [ TEMPLATE [ VERSION ] ] : create a configuration
235 target TARGET : change the target hardware
236 template TEMPLATE [ VERSION ] : change the template
237 add PACKAGE [ PACKAGE ... ] : add package(s)
238 remove PACKAGE [ PACKAGE ... ] : remove package(s)
239 version VERSION PACKAGE [ PACKAGE ... ] : change version of package(s)
240 export FILE : export minimal config info
241 import FILE : import additional config info
242 check : check the configuration
243 resolve : resolve conflicts
244 tree : create a build tree
246 --config=FILE : the configuration file
247 --prefix=DIRECTORY : the install prefix
248 --srcdir=DIRECTORY : the source repository
249 --no-resolve : disable conflict
251 --version : show version and copyright
262 >Example 11-2. ecosconfig output —
263 list of available packages, targets and templates</B
272 CLASS="PROGRAMLISTING"
274 Package CYGPKG_CYGMON (CygMon support via eCos):
276 versions: <version>
277 Package CYGPKG_DEVICES_WALLCLOCK_DALLAS_DS1742 (Wallclock driver for Dallas 1742):
278 aliases: devices_wallclock_ds1742 device_wallclock_ds1742
279 versions: <version>
280 Package CYGPKG_DEVICES_WALLCLOCK_SH3 (Wallclock driver for SH3 RTC module):
281 aliases: devices_wallclock_sh3 device_wallclock_sh3
282 versions: <version>
283 Package CYGPKG_DEVICES_WATCHDOG_ARM_AEB (Watchdog driver for ARM/AEB board):
284 aliases: devices_watchdog_aeb device_watchdog_aeb
285 versions: <version>
286 Package CYGPKG_DEVICES_WATCHDOG_ARM_EBSA285 (Watchdog driver for ARM/EBSA285 board):
287 aliases: devices_watchdog_ebsa285 device_watchdog_ebsa285
288 versions: <version>
299 NAME="AEN689">Selecting a Target</H2
301 >To configure for a listed target, type: </P
309 CLASS="PROGRAMLISTING"
310 >$ ecosconfig new <target></PRE
315 >For example, to configure for the ARM PID development board,
324 CLASS="PROGRAMLISTING"
325 >$ ecosconfig new pid</PRE
330 >You can then edit the generated file,
334 >, setting the options as required for the
335 target (endianess, CPU model, Startup type, etc.). For detailed
336 information about how to edit the <TT
342 >CDL Writer's Guide</I
344 HREF="editing-an-ecos-savefile.html"
345 >the Section called <I
353 >Create a build tree for the configured target by typing:</P
361 CLASS="PROGRAMLISTING"
362 >$ ecosconfig tree</PRE
367 >If there are any problem with the configuration,
371 > will tell you. The most likely cause of
372 this is mistakes when editing the <TT
376 You can check whether the configuration you have made is correct,
377 without building the tree with the following command:</P
385 CLASS="PROGRAMLISTING"
386 >$ ecosconfig check</PRE
391 >If this reports any conflicts you can get
395 > to try and resolve them itself by typing:</P
403 CLASS="PROGRAMLISTING"
404 >$ ecosconfig resolve</PRE
410 HREF="conflicts-and-constraints.html"
411 >the Section called <I
412 >Conflicts and constraints</I
414 > for more details.</P
416 >You can now run the command <B
423 >, after which you will be at the same point you
424 would be after running the <SPAN
426 >Configuration Tool</SPAN
428 — you can start developing your own applications,
429 following the steps in <A
430 HREF="building-and-running-sample-appliations.html"
434 >The procedure shown above allows you to do very coarse-grained
435 configuration of the <SPAN
438 > kernel: you can select which packages
439 to include in your kernel, and give target and start-up options.
440 But you cannot select components within a package, or set the very
441 fine-grained options. </P
443 >To select fine-grained configuration options you will need to
444 edit the configuration file <TT
448 current directory and regenerate the build tree.</P
468 >You should follow the manual configuration process described
469 above very carefully, and you should read the comments in each file
470 to see when one option depends on other options or packages being
471 enabled or disabled. If you do not, you might end up with an inconsistently
472 configured kernel which could fail to build or might execute
485 SUMMARY="Footer navigation table"
496 HREF="using-configtool-windows-linux.html"
505 HREF="ecos-user-guide.html"
514 HREF="running-an-ecos-test-case.html"
524 >Configuration Tool on Windows and Linux Quick Start</TD
530 HREF="configuring-and-building-ecos-from-source.html"