diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html index 52ed3cfa994..69d7d4c2539 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -8,7 +8,7 @@

NuttX RTOS

-

Last Updated: January 7, 2008

+

Last Updated: January 8, 2008

@@ -27,39 +27,76 @@ - + - + - + - + - + - + - + - + - + + + + +
Overview + Overview.
+ What is NuttX? +
Downloads + Downloads.
+ Where can I get NuttX? What is the current development status? +
Supported Platforms + Supported Platforms.
+ What target platforms has NuttX been ported to? +
Memory Footprint + Development Environments.
+ What kinds of host cross-development platforms can be used with NuttX? +
Licensing + Memory Footprint.
+ Just how big is it? Do I have enough memory to use NuttX? +
Release History + Licensing.
+ Are there any licensing restrictions for the use of NuttX? (Almost none) + Will there be problems if I link my proprietary code with NuttX? (No) +
Bugs, Issues, Things-To-Do + Release History
+ What has changed in the last release of NuttX? + What unreleased changes are pending in CVS? +
Other Documentation + Bugs, Issues, Things-To-Do.
+ Software is never finished nor ever tested well enough. + (Do you want to help devlop NuttX? If so, send me an email). +
Trademarks + Other Documentation.
+ What other NuttX documentation is available? +
+ Trademarks.
+ Some of the words used in this document belong to other people. +
@@ -643,6 +680,159 @@ is available that may be used to build a NuttX-compatible arm-elf toolchain under Linux or Cygwin. + + + + +
+

Development Environments

+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Linux + GNU make + GCC/binutils +

+

+ The is the most natural development environment for NuttX. + Any version of the GCC/binutils toolchain may be used. + There is a highly modified buildroot + available for download from the + NuttX SourceForge + page. + This download may be used to build a NuttX-compatible arm-elf toolchain under Linux or Cygwin. + Additional support for m68k, m68hc11, and m68hc12 is available in the + NuttX CVS. +

+
+ Linux + GNU make + SDCC +

+

+ Also very usable is the Linux environment using the + SDCC compiler. + The SDCC compiler provides support for the 8051/2, z80, hc08, and other microcontrollers. + The SDCC-based logic is less well exercised and you will likely find some compilation + issues if you use parts of NuttX with SDCC that have not been well-tested. +

+
+ Cygwin + GNU make + GCC/binutils +

+

+ This combination works well too. + It works just as well as the native Linux environment except + that compilation and build times are a little longer. + The custom NuttX buildroot referenced above may be build in + the Cygwin environment as well. +

+
+ Cygwin + GNU make + SDCC +

+

+ I have never tried this combination, but it would probably work just fine. +

+
+ Cygwin + GNU make + Windows Native Toolchain +

+

+ This is a tougher environment. + In this case, the Windows native toolchain is unaware of the the + Cygwin sandbox and, instead, operates in the native Windows environment. + The primary difficulties with this are: +

+
    +
  • + Pathes. + Full pathes for the native toolchain must follow Windows standards. + For example, the path /home/my\ name/nuttx/include my have to be + converted to something like 'C:\cygwin\home\my name\nuttx\include' + to be usable by the toolchain. +
  • +

    + Fortunately, this conversion is done simply using the cygpath utility. +

    +
  • + Symbolic Links + NuttX depends on symbolic links to install platform-specific directories in the build system. + On Linux, true symbolic links are used. + On Cygwin, emulated symbolic links are used. + Unfortunately, for native Windows applications that operate outside of the + Cygwin sandbox, these symbolic links cannot be used. +
  • +

    + The NuttX make system works around this limitation by copying the platform + specific directories in place. + These copied directories make work a little more complex, but otherwise work well. +

    +
+

+ At present, on the Zilog Z16F port uses a native Windows toolchain + (the Zilog ZDS-II toolchain). + +

+ Others? +

+

+ The primary environmental dependency of NuttX is GNU make. + If you have other platforms that support GNU make or make + utilities that are compatible with GNU make, then it is very + likely that NuttX would work in that environment as well. + If GNU make is not supported, then some significant modification + of the Make system would be required. +

+
+
@@ -790,6 +980,7 @@ Other memory: * Add support toolchains that do not support making of dependencies * Fix Cygwin build with spaces in directory names * Name make system changes to deal with non-GNU toolchains (i.e., Zilog) + * Add support for Windows native toolchains that cannot follow Cygwin soft links