Numerous changes based on comments from Stephan Wilms <Stephan.Wilms@CWA.de>

including a new section in the Getting Started called "Where to
Go From Here", lots of index entries added, and more configuration
table information.
This commit is contained in:
Joel Sherrill
2000-05-04 19:45:17 +00:00
parent 223b64f331
commit adee597960
31 changed files with 508 additions and 140 deletions

View File

@@ -211,7 +211,6 @@ The directory tree should look something like the following figure:
@value{GCC-UNTAR}/
@value{GNAT-UNTAR}/
@value{NEWLIB-UNTAR}/
@value{RTEMS-UNTAR}/
bit_ada
bit_gdb
bit_rtems
@@ -398,13 +397,16 @@ cd tools/@value{GNAT-UNTAR}/src
cp -r ada ../../@value{GCC-UNTAR}
@end example
===================================================================
@c
@c Localizing the Configuration
@c
@section Localizing the Configuration
Edit the @code{user.cfg} file to alter the settings of various
Edit the @code{user.cfg} file to alter the settings of various
variables which are used to tailor the build process.
Each of the variables set in @code{user.cfg} may be modified
as described below:
@@ -416,12 +418,12 @@ RTEMS to be built. It is recommended that the directory chosen to receive
these tools be named so that it is clear from which egcs distribution it
was generated and for which target system the tools are to produce code for.
@b{WARNING}: The @code{INSTALL_POINT} should not be a subdirectory
@b{WARNING}: The @code{INSTALL_POINT} should not be a subdirectory
under the build directory. The build directory will be removed
automatically upon successful completion of the build procedure.
@item BINUTILS
is the directory under tools that contains @value{BINUTILS-UNTAR}.
is the directory under tools that contains @value{BINUTILS-UNTAR}.
For example:
@example
@@ -448,7 +450,9 @@ NEWLIB=@value{NEWLIB-UNTAR}
@end example
@item BUILD_DOCS
is set to "yes" if you want to install documentation.
is set to "yes" if you want to install documentation. This requires
that tools supporting documentation production be installed. This
currently is limited to the GNU texinfo package.
For example:
@example
@@ -457,13 +461,22 @@ BUILD_DOCS=yes
@item BUILD_OTHER_LANGUAGES
is set to "yes" if you want to build languages other than C and C++. At
the current time, this enables Fortan and Objective-C.
the current time, the set of alternative languages includes Java, Fortran,
and Objective-C. These alternative languages do not always build cross.
Hence this option defaults to "no".
For example:
@example
BUILD_OTHER_LANGUAGES=yes
@end example
@b{NOTE:} Based upon the version of the compiler being used, it may not
be possible to build languages other than C and C++ cross. In many cases,
the language run-time support libraries are not "multilib'ed". Thus the
executable code in these libraries will be for the default compiler settings
and not necessarily be correct for your CPU model.
@item RTEMS
is the directory under tools that contails @value{RTEMS-UNTAR}.
@@ -475,9 +488,28 @@ and is forced to "no" for those targets. This corresponds to the
This must be enabled to support the GNAT/RTEMS run-time.
@item ENABLE_RTEMS_ITRON
is set to "yes" if you want to enable the RTEMS ITRON API support.
At this time, this feature is not supported by the UNIX ports of RTEMS
and is forced to "no" for those targets. This corresponds to the
@code{configure} option @code{--enable-itron}.
@item ENABLE_RTEMS_MP
is set to "yes" if you want to enable the RTEMS multiprocessing
support. This feature is not supported by all RTEMS BSPs and
is automatically forced to "no" for those BSPs. This corresponds to the
@code{configure} option @code{--enable-multiprocessing}.
@item ENABLE_RTEMS_CXX
is set to "yes" if you want to build the RTEMS C++ support including
the C++ Wrapper for the Classic API. This corresponds to the
@code{configure} option @code{--enable-cxx}.
@item ENABLE_RTEMS_TESTS
is set to "yes" if you want to build the RTEMS Test Suite. If this
is set to "no", then only the Sample Tests will be built.
is set to "no", then only the Sample Tests will be built. Setting
this option to "yes" significantly increases the amount of disk
space required to build RTEMS.
This corresponds to the @code{configure} option @code{--enable-tests}.
@item ENABLE_RTEMS_TCPIP
@@ -486,10 +518,36 @@ particular BSP does not support TCP/IP, then this feature is automatically
disabled. This corresponds to the @code{configure} option
@code{--enable-tcpip}.
@item ENABLE_RTEMS_CXX
is set to "yes" if you want to build the RTEMS C++ support including
the C++ Wrapper for the Classic API. This corresponds to the
@code{configure} option @code{--enable-cxx}.
@item ENABLE_RTEMS_NONDEBUG
is set to "yes" if you want to build RTEMS in a fully optimized
state. This corresponds to executing @code{make} after configuring
the source tree.
@item ENABLE_RTEMS_DEBUG
is set to "yes" if you want to build RTEMS in a debug version.
When built for debug, RTEMS will include run-time code to
perform consistency checks such as heap consistency checks.
Although the precise compilation arguments are BSP dependent,
the debug version of RTEMS is usually built at a lower optimization
level. This is usually done to reduce inlining which can make
tracing code execution difficult. This corresponds to executing
@code{make VARIANT=debug} after configuring
the source tree.
@item INSTALL_RTEMS
is set to "yes" if you want to install RTEMS after building it.
This corresponds to executing @code{make install} after configuring
and building the source tree.
@item ENABLE_RTEMS_MAINTAINER_MODE
is set to "yes" if you want to enabled maintainer mode functionality
in the RTEMS Makefile. This is disabled by default and it is not
expected that most users will want to enable this. When this option
is enabled, the build process may attempt to regenerate files that
require tools not required when this option is disabled.
This corresponds to the @code{configure} option
@code{--enable-maintainer-mode}.
@end table
@section Running the bit_ada Script
@@ -522,6 +580,15 @@ NOTE: The above list of target configurations is the list of RTEMS supported
targets. Only a subset of these have been tested with GNAT/RTEMS. For more
information, contact your GNAT/RTEMS representative.
The build process can take a while to complete. Many users find it
handy to run the build process in the background, capture the output
in a file, and monitor the output. This can be done as follows:
@example
./bit_ada <target configuration> >bit.log 2>&1 &
tail -f bit.log
@end example
If no errors are encountered, the @code{bit_ada} script will conclude by
printing messages similar to the following:

View File

@@ -16,18 +16,38 @@ assessing the amount of disk space required for your installation:
+------------------------------------+--------------------------+
| Component | Disk Space Required |
+------------------------------------+--------------------------+
| archive directory | 30 Mbytes |
| tools src unzipped | 100 Mbytes |
| archive directory | 40 Mbytes |
| tools src unarchived | 200 Mbytes |
| each individual build directory | 300 Mbytes worst case |
| each installation directory | 20-130 Mbytes |
| each installation directory | 20-200 Mbytes |
+------------------------------------+--------------------------+
@end example
The disk space required for each installation directory depends
primarily on the number of RTEMS BSPs which are to be installed.
If a single BSP is installed, then the size of each install directory
It is important to understand that the above requirements only address
the GNU C/C++ Cross Compiler Tools themselves. Adding additional
languages such as Fortran or Objective-C can increase the size
of the build and installation directories. Also, the unarchived
source and build directories can be removed after the tools are
installed.
After the tools themselves are installed, RTEMS must be built
and installed for each Board Support Package that you wish
to use. Thus the precise amount of disk space required
for each installation directory depends highly on the number
of RTEMS BSPs which are to be installed. If a single BSP is
installed, then the additional size of each install directory
will tend to be in the 40-60 Mbyte range.
There are a number of factors which must be taken into
account in oreder to estimate the amount of disk space required
to build RTEMS itself. Attempting to build multiple BSPs in
a single step increases the disk space requirements. Similarly
enabling optional features increases the build and install
space requirements. In particular, enabling and building
the RTEMS tests results in a significant increase in build
space requirements but since the test are not installed has
no impact on installation requirements.
The instructions in this manual should work on any computer running
a UNIX variant. Some native GNU tools are used by this procedure
including:

View File

@@ -26,18 +26,18 @@
@set GCC-UNTAR gcc-2.8.1
@set GCC-FTPSITE ftp.gnu.org
@set GCC-FTPDIR /pub/gnu
@set GCC-RTEMSPATCH gcc-2.8.1-rtems-diff-19980527.gz
@set GCC-RTEMSPATCH gcc-2.8.1-rtems-gnat-3.12p-20000429.diff.gz
@c
@c GNAT Version
@c
@set GNAT-VERSION gnat 3.11b
@set GNAT-TAR gnat-3.11b-src.tar.gz
@set GNAT-UNTAR gnat-3.11b-src
@set GNAT-VERSION gnat 3.12p
@set GNAT-TAR gnat-3.12p-src.tar.gz
@set GNAT-UNTAR gnat-3.12p-src
@set GNAT-FTPSITE NONE
@set GNAT-FTPDIR NO_DIRECTORY
@set GNAT-RTEMSPATCH gnat-3.11b-rtems-diff-19981105.gz
@set GNAT-RTEMSPATCH gnat-3.12p-rtems-20000429.diff.gz
@c
@c BINUTILS Version
@@ -49,7 +49,7 @@
@set BINUTILS-UNTAR binutils-2.9.1
@set BINUTILS-FTPSITE ftp.gnu.org
@set BINUTILS-FTPDIR /pub/gnu
@set BINUTILS-RTEMSPATCH binutils-2.9.1-rtems-diff-19981027.gz
@set BINUTILS-RTEMSPATCH binutils-2.9.1-rtems-gnat-3.12p-20000429.diff.gz
@c When forced to use a snapshot
@c @set BINUTILS-VERSION gas 980314
@@ -63,12 +63,12 @@
@c NEWLIB Version
@c
@set NEWLIB-VERSION newlib 1.8.1
@set NEWLIB-TAR newlib-1.8.1.tar.gz
@set NEWLIB-UNTAR newlib-1.8.1
@set NEWLIB-VERSION newlib 1.8.2
@set NEWLIB-TAR newlib-1.8.2.tar.gz
@set NEWLIB-UNTAR newlib-1.8.2
@set NEWLIB-FTPSITE ftp.cygnus.com
@set NEWLIB-FTPDIR /pub/newlib
@set NEWLIB-RTEMSPATCH newlib-1.8.1-rtems-diff-19980121.gz
@set NEWLIB-RTEMSPATCH newlib-1.8.2-rtems-20000501.diff.gz
@c
@c GDB Version
@@ -79,18 +79,18 @@
@set GDB-UNTAR gdb-4.17
@set GDB-FTPSITE ftp.gnu.org
@set GDB-FTPDIR /pub/gnu
@set GDB-RTEMSPATCH gdb-4.17-rtems-diff-19981027.gz
@set GDB-RTEMSPATCH gdb-4.17-rtems-gnat-3.12p-20000429.diff
@c @set GDB-GNATPATCH gdb-ada-patch-1.17.8.gz
@c
@c RTEMS Version
@c
@set RTEMS-VERSION RTEMS 4.0.0
@set RTEMS-TAR rtems-4.0.0.tgz
@set RTEMS-UNTAR rtems-4.0.0
@set RTEMS-FTPSITE ftp.OARcorp.com
@set RTEMS-FTPDIR /pub/rtems/4.0.0
@set BUILDTOOLS-TAR ada_build_scripts-4.0.0.tgz
@set RTEMS-VERSION RTEMS 4.5.0-beta2
@set RTEMS-TAR rtems-4.5.0-beta2.tgz
@set RTEMS-UNTAR rtems-4.5.0-beta2
@set RTEMS-FTPSITE ftp.OARcorp.com
@set RTEMS-FTPDIR /pub/rtems/betas/4.5.0-beta
@set BUILDTOOLS-TAR c_build_scripts-4.5.0-beta2.tgz