summaryrefslogtreecommitdiffstats
path: root/doc/started/nt.t
diff options
context:
space:
mode:
Diffstat (limited to 'doc/started/nt.t')
-rw-r--r--doc/started/nt.t158
1 files changed, 158 insertions, 0 deletions
diff --git a/doc/started/nt.t b/doc/started/nt.t
new file mode 100644
index 0000000000..b07261d274
--- /dev/null
+++ b/doc/started/nt.t
@@ -0,0 +1,158 @@
+@c
+@c COPYRIGHT (c) 1988-2002.
+@c On-Line Applications Research Corporation (OAR).
+@c All rights reserved.
+@c
+@c $Id$
+@c
+
+@appendix Using MS-Windows as a Development Host
+
+This chapter discusses the installation of the GNU tool chain
+on a computer running the Microsoft Windows operating system.
+
+This chapter was originally written by
+@uref{mailto:g_montel@@yahoo.com, Geoffroy Montel <g_montel@@yahoo.com>}
+with input from
+@uref{mailto:<D.J@@fiddes.surfaid.org>, David Fiddes <D.J@@fiddes.surfaid.org>}.
+It was based upon his successful but unnecessarily
+painful efforts with Cygwin beta versions.
+Cygwin and this chapter have been updated multiple times since
+those early days although their pioneering efforts
+and input is still greatly appreciated.
+
+@section Microsoft Windows Version Requirements
+
+RTEMS users report fewer problems when using Microsoft
+Windows NT, 2000, or XP. Although, the open source tools
+that are used in RTEMS development do execute on Windows 95,
+98, or ME, they tend to be more stable when used with
+the modern Windows variants.
+
+@section Cygwin
+
+For RTEMS development, the recommended approach is to use
+Cygwin 1.0 or later. Cygwin is available from
+@uref{http://sources.redhat.com/cygwin, http://sources.redhat.com/cygwin}
+Recent versions of Cygwin are vastly improved over the beta
+versions. Most of the oddities, instabilities, and performance
+problems have been resolved. The installation procedure
+is much simpler. However, there are a handful of issues
+that remain to successfully use Cygwin as an RTEMS development
+environment.
+
+@itemize @bullet
+
+@item There is no @code{cc} program by default. The GNU configure
+scripts used by RTEMS require this to be present to work properly.
+The solution is to link @code{gcc.exe} to @code{cc.exe} as follows:
+
+@example
+ln -s /bin/gcc.exe /bin/cc.exe
+@end example
+
+@item Make sure @code{/bin/sh.exe} is GNU Bash. Some Cygwin
+versions provide a light Bourne shell which is insufficient to build
+RTEMS. To see which shell is installed as @code{/bin/sh.exe}, execute
+the command @code{/bin/sh --version}. If it looks similar to
+the following, then it is GNU Bash and you are OK:
+
+@example
+GNU bash, version 2.04.5(12)-release (i686-pc-cygwin)
+Copyright 1999 Free Software Foundation, Inc.
+@end example
+
+If you get an error or it claims to be any other shell, you need
+to copy it to a fake name and copy
+@code{/bin/bash.exe} to @code{/bin/sh.exe}:
+
+@example
+cd /bin
+mv sh.exe old_sh.exe
+cp bash.exe sh.exe
+@end example
+
+The Bourne shell has to be present in @code{/bin} directory to run
+shell scripts properly.
+
+@item Make sure you unarchive and build in a binary mounted
+filesystem (e.g. mounted with the @code{-b} option). Otherwise,
+many confusing errors will result.
+
+@item A user has reported that they needed
+to set CYGWIN=ntsec for chmod to work correctly, but had to set
+CYGWIN=nontsec for compile to work properly (otherwise there were
+complaints about permissions on a temporary file).
+
+@item If you want to build the tools from source, you have the
+same options as UNIX users.
+
+@item You may have to uncompress archives during this
+process. You must @b{NOT} use @code{WinZip} or
+@code{PKZip}. Instead the un-archiving process uses
+the GNU @code{zip} and @code{tar} programs as shown below:
+
+@example
+tar -xzvf archive.tgz
+@end example
+
+@code{tar} is provided with Cygwin.
+
+@end itemize
+
+@section Text Editor
+
+You absolutely have to use a text editor which can
+save files with Unix format. So do @b{NOT} use Notepad
+or Wordpad! There are a number of editors
+freely available that can be used.
+
+@itemize @bullet
+@item @b{VIM} (@b{Vi IMproved}) is available from
+@uref{http://www.vim.org/,http://www.vim.org/}.
+This editor has the very handy ability to easily
+read and write files in either DOS or UNIX style.
+
+@item @b{GNU Emacs} is available for many platforms
+including MS-Windows. The official homepage
+is @uref{http://www.gnu.org/software/emacs/emacs.html,
+http://www.gnu.org/software/emacs/emacs.html}.
+The GNU Emacs on Windows NT and Windows 95/98 FAQ is at
+@uref{http://www.gnu.org/software/emacs/windows/ntemacs.html,
+http://www.gnu.org/software/emacs/windows/ntemacs.html}.
+
+@end itemize
+
+If you do accidentally end up with files
+having MS-DOS style line termination, then you
+may have to convert them to Unix format for some
+Cygwin programs to operate on them properly. The
+program @code{dos2unix} can be used to put them
+back into Unix format as shown below:
+
+@example
+$ dos2unix XYZ
+Dos2Unix: Cleaning file XYZ ...
+@end example
+
+@section System Requirements
+
+Although the finished cross-compiler is fairly easy on resources,
+building it can take a significant amount of processing power and
+disk space.
+
+@itemize @bullet
+
+@item The faster the CPU, the better. The tools and Cygwin can be
+@b{very} CPU hungry.
+
+@item The more RAM, the better. Reports are that when building GCC
+and GDB, peak memory usage can exceed 256 megabytes.
+
+@item The more disk space, the better. You need more if you are building
+the GNU tools and the amount of disk space for binaries is obviously
+directly dependent upon the number of CPUs you have cross toolsets
+installed for.
+
+@end itemize
+