Now builds clean for info, html, and ps.

This commit is contained in:
Joel Sherrill
1998-04-09 19:43:18 +00:00
parent 417fcc7375
commit 6113b3a63d
6 changed files with 254 additions and 228 deletions

View File

@@ -60,7 +60,7 @@ buildc.texi: buildc.t
-n "Building RTEMS" ${*}.t -n "Building RTEMS" ${*}.t
buildrt.texi: buildrt.t buildrt.texi: buildrt.t
$(BMENU) -c -p "Running the bit script" \ $(BMENU) -c -p "GNU C/C++ cross compiler toolset complete" \
-u "Top" \ -u "Top" \
-n "Building the Sample Application" ${*}.t -n "Building the Sample Application" ${*}.t

View File

@@ -1,5 +1,4 @@
@c @c
@c
@c COPYRIGHT (c) 1988-1998. @c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR). @c On-Line Applications Research Corporation (OAR).
@c All rights reserved. @c All rights reserved.
@@ -7,60 +6,221 @@
@c $Id$ @c $Id$
@c @c
@chapter Building RTEMS @chapter Building the GNU C/C++ Cross Compiler Toolset
@section Unpack the RTEMS source @section Get all the pieces
Use the following command sequence to unpack the RTEMS source into the The tree structure in the figure below is assumed to be present in the
tools directory: following discussions:
Gather the components that will be required for the installation and place
them in an archive directory. Call this directory arc. Be sure that there
is sufficient space to hold all necessary information. This will amount to
approximately 20 megabytes.
@example
egcs 1.0.2
FTP Site: egcs.cygnus.com
Directory: /pub/egcs/releases/egcs-1.0.2
File: egcs-1.0.2-980309-prerelease.tar.gz
binutils 2.8.1
FTP Site: ftp.gnu.org
Directory: /pub/gnu
File: binutils-2.8.1.tar.gz
newlib 1.8.0
FTP Site: ftp.cygnus.com
Directory: /pub/newlib
File: newlib-1.8.0.tar.gz
RTEMS @value{version}
FTP Site: ftp.oarcorp.com
Directory: /oarcorp/private/snapshots
File: rtems-980219.tgz
File: bit
File: binutils-2.8.1-rtems-diff-971221.gz
File: newlib-1.8.0-diff.980120.gz
File: simple_app.tgz
@end example
@section Create the tools directory
Create a directory called tools that will serve as a working directory to
perform the build of the cross compiler tools.
Unpack the compressed tar files using the following command sequence:
@example @example
cd tools cd tools
tar xzf ../arc/rtems-980219.tgz tar xzf ../arc/egcs-1.0.2-980309-prerelease.tar.gz
tar xzf ../arc/binutls-2.8.1.tar.gz
tar xzf ../arc/newlib-1.8.0.tar.gz
@end example @end example
@section Add the bin directory under the install point to the default PATH After the compressed tar files have been unpacked, the following
directories will have been created under tools.
Use the following command to append the <INSTALL_POINT>/bin directory to @itemize @bullet
the PATH variable: @item binutils-2.8.1
@item egcs-1.0.2
@item newlib-1.8.0
@end itemize
@section Apply patches for newlib
Apply the patches using the following command sequence:
@example @example
PATH=$PATH:<INSTALL_POINT>/bin cd tools/newlib-1.8.0
zcat arc/newlib-1.8.0-diff.980120.gz|patch -p1
@end example @end example
@section Generate RTEMS for a specific target and board support package Check to see if any of these patches have been rejected using the following
sequence:
Make a build directory under tools and build the RTEMS product in this
directory. The ../rtems-980219/configure command has numerous command line
arguments. These arguments are discussed in detail in documentation that
comes with the RTEMS distribution. In the installation described in the
section "Unpack the RTEMS source", these configuration options can be found
in file:
@example @example
tools/rtems-980219/README.configure cd tools/newlib-1.8.0
find . -name "*.rej" -print
@end example @end example
A simple example of the configuration appears below: If any files are found with the .rej extension, a patch has been rejected.
This should not happen with a good patch file.
To see the files that have been modified use the sequence:
@example @example
mkdir build-rtems cd tools/newlib-1.8.0
cd build-rtems find . -name "*.orig" -print
../rtems-980219/configure --target=<TARGET_CONFIGURATION> \ @end example
--disable-posix --disable-ka9q --disable-cpp \
--enable-rtemsbsp=<BOARD_SUPPORT_PACKAGE>\ The files that are found, have been modified by the patch file.
--prefix=< INSTALL_POINT>
gmake all install
@section Apply patches for binutils
Apply the patches using the following command sequence:
@example
cd tools/binutils-2.8.1
zcat arc/binutils-2.8.1-rtems-diff-971221.gz|patch -p1
@end example
Check to see if any of these patches have been rejected using the following
sequence:
@example
cd tools/binutils-2.8.1
find . -name "*.rej" -print
@end example
If any files are found with the .rej extension, a patch has been rejected.
This should not happen with a good patch file.
To see the files that have been modified use the sequence:
@example
cd tools/binutils-2.8.1
find . -name "*.orig" -print
@end example
The files that are found, have been modified by the patch file.
@section Modify the bit script
Copy the bit file from arc to the tools directory.
Edit the bit file to alter the following environmental variables:
@itemize @bullet
@item INSTALL_POINT
@item BINUTILS
@item NEWLIB
@item GCC
@item BUILD_DOCS
@end itemize
These variables are located in the script section that resembles the
extract below:
@example
# USERCHANGE -- localize these.
#
# INSTALL_POINT: Directory tools are installed into.
# Recommended installation point for various OS's:
# Linux: /usr/local/rtems
# Solaris: /opt/gnu/rtems
# BINUTILS: Binutils source directory
# NEWLIB: Newlib source directory
# GCC: Newlib source directory
# BUILD_DOCS: Set to "yes" if you want to install documentation.
#
BINUTILS=gas-971208
GCC=egcs-1.0.1
NEWLIB=newlib-1.8.0
BUILD_DOCS=yes
INSTALL_POINT=/home/joel/$@{GCC@}/$@{target@}
# USERCHANGE - uncomment this if you want to watch the commands.
@end example
Where:
@table @code
@item INSTALL_POINT
is the location where you wish the GNU C/C++ cross compilation tools for
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.
@item BINUTILS
is the directory under tools that contains binutils-2.8.1.
BINUTILS=binutils-2.8.1
@item GCC
is the directory under tools that contains egcs-1.0.1.
GCC=egcs-1.0.2-980309-prerelease
@item NEWLIB
is the directory under tools that contains newlib-1.8.0.
NEWLIB=newlib-1.8.0
@item BUILD_DOCS
is set to "yes" if you want to install documentation.
BUILD_DOCS=yes
@end table
@section Running the bit script
Run the modified bit script using the following sequence:
@example
cd tools
./bit <target configuration>
@end example @end example
Where: Where:
The current summary of <TARGET_CONFIGURATION>'s and <target configuration> is one of the following:
<BOARD_SUPPORT_PACKAGE>'s can be found in
tools/rtems-980219/README.configure
@example
hppa1.1
i386
i386-elf
i386-go32
i960
m68k
mips64orion
powerpc
sh
sparc
@end example
<INSTALL_POINT> is the installation point from the previous step @section GNU C/C++ cross compiler toolset complete
"Modify the bit script" in the build of the tools.
At this point the GNU C/C++ cross compile tools should be built.

View File

@@ -1,4 +1,5 @@
@c @c
@c
@c COPYRIGHT (c) 1988-1998. @c COPYRIGHT (c) 1988-1998.
@c On-Line Applications Research Corporation (OAR). @c On-Line Applications Research Corporation (OAR).
@c All rights reserved. @c All rights reserved.
@@ -6,197 +7,60 @@
@c $Id$ @c $Id$
@c @c
@chapter Building the GNU C/C++ Cross Compiler Toolset @chapter Building RTEMS
@section Get all the pieces @section Unpack the RTEMS source
The tree structure in the figure below is assumed to be present in the Use the following command sequence to unpack the RTEMS source into the
following discussions: tools directory:
Gather the components that will be required for the installation and place
them in an archive directory. Call this directory arc. Be sure that there
is sufficient space to hold all necessary information. This will amount to
approximately 20 megabytes.
Component Location
egcs 1.0.2 FTP Site: egcs.cygnus.com
Directory: /pub/egcs/releases/egcs-1.0.2
File: egcs-1.0.2-980309-prerelease.tar.gz
binutils 2.8.1 FTP Site: ftp.gnu.org
Directory: /pub/gnu
File: binutils-2.8.1.tar.gz
newlib 1.8.0 FTP Site: ftp.cygnus.com
Directory: /pub/newlib
File: newlib-1.8.0.tar.gz
rtems-980219.tgz FTP Site: ftp.oarcorp.com
Directory: /oarcorp/private/snapshots
File: rtems-980219.tgz
File: bit
File: binutils-2.8.1-rtems-diff-971221.gz
File: newlib-1.8.0-diff.980120.gz
File: simple_app.tgz
@section Create the tools directory
Create a directory called tools that will serve as a working directory to
perform the build of the cross compiler tools.
Unpack the compressed tar files using the following command sequence:
@example @example
cd tools cd tools
tar xzf ../arc/egcs-1.0.2-980309-prerelease.tar.gz tar xzf ../arc/rtems-980219.tgz
tar xzf ../arc/binutls-2.8.1.tar.gz
tar xzf ../arc/newlib-1.8.0.tar.gz
@end example @end example
After the compressed tar files have been unpacked, the following @section Add the bin directory under the install point to the default PATH
directories will have been created under tools.
<EFBFBD> binutils-2.8.1 Use the following command to append the <INSTALL_POINT>/bin directory to
<EFBFBD> egcs-1.0.2 the PATH variable:
<EFBFBD> newlib-1.8.0
@section Apply patches for newlib
Apply the patches using the following command sequence:
@example @example
cd tools/newlib-1.8.0 PATH=$PATH:<INSTALL_POINT>/bin
zcat arc/newlib-1.8.0-diff.980120.gz|patch -p1
@end example @end example
Check to see if any of these patches have been rejected using the following @section Generate RTEMS for a specific target and board support package
sequence:
Make a build directory under tools and build the RTEMS product in this
directory. The ../rtems-980219/configure command has numerous command line
arguments. These arguments are discussed in detail in documentation that
comes with the RTEMS distribution. In the installation described in the
section "Unpack the RTEMS source", these configuration options can be found
in file:
@example @example
cd tools/newlib-1.8.0 tools/rtems-980219/README.configure
find . -name "*.rej" -print
@end example @end example
If any files are found with the .rej extension, a patch has been rejected. A simple example of the configuration appears below:
This should not happen with a good patch file.
To see the files that have been modified use the sequence:
@example @example
cd tools/newlib-1.8.0 mkdir build-rtems
find . -name "*.orig" -print cd build-rtems
@end example ../rtems-980219/configure --target=<TARGET_CONFIGURATION> \
--disable-posix --disable-ka9q --disable-cpp \
The files that are found, have been modified by the patch file. --enable-rtemsbsp=<BOARD_SUPPORT_PACKAGE>\
--prefix=< INSTALL_POINT>
gmake all install
@section Apply patches for binutils
Apply the patches using the following command sequence:
@example
cd tools/binutils-2.8.1
zcat arc/binutils-2.8.1-rtems-diff-971221.gz|patch -p1
@end example
Check to see if any of these patches have been rejected using the following
sequence:
@example
cd tools/binutils-2.8.1
find . -name "*.rej" -print
@end example
If any files are found with the .rej extension, a patch has been rejected.
This should not happen with a good patch file.
To see the files that have been modified use the sequence:
@example
cd tools/binutils-2.8.1
find . -name "*.orig" -print
@end example
The files that are found, have been modified by the patch file.
@section Modify the bit script
Copy the bit file from arc to the tools directory.
Edit the bit file to alter the following environmental variables:
<EFBFBD> INSTALL_POINT
<EFBFBD> BINUTILS
<EFBFBD> NEWLIB
<EFBFBD> GCC
<EFBFBD> BUILD_DOCS
These variables are located in the script section that resembles the
extract below:
@example
# USERCHANGE -- localize these.
#
# INSTALL_POINT: Directory tools are installed into.
# Recommended installation point for various OS's:
# Linux: /usr/local/rtems
# Solaris: /opt/gnu/rtems
# BINUTILS: Binutils source directory
# NEWLIB: Newlib source directory
# GCC: Newlib source directory
# BUILD_DOCS: Set to "yes" if you want to install documentation.
#
BINUTILS=gas-971208
GCC=egcs-1.0.1
NEWLIB=newlib-1.8.0
BUILD_DOCS=yes
INSTALL_POINT=/home/joel/${GCC}/${target}
# USERCHANGE - uncomment this if you want to watch the commands.
Where:
INSTALL_POINT is the location where you wish the GNU C/C++ cross compilation tools for 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.
BINUTILS is the directory under tools that contains binutils-2.8.1.
BINUTILS=binutils-2.8.1
GCC is the directory under tools that contains egcs-1.0.1.
GCC=egcs-1.0.2-980309-prerelease
NEWLIB is the directory under tools that contains newlib-1.8.0.
NEWLIB=newlib-1.8.0
BUILD_DOCS is set to "yes" if you want to install documentation.
BUILD_DOCS=yes
@section Running the bit script
Run the modified bit script using the following sequence:
@example
cd tools
./bit <target configuration>
@end example @end example
Where: Where:
<target configuration> is one of the following: The current summary of <TARGET_CONFIGURATION>'s and
<BOARD_SUPPORT_PACKAGE>'s can be found in
tools/rtems-980219/README.configure
@example
hppa1.1
i386
i386-go32
i960
m68k
mips64orion
powerpc
sh
sparc
@end example
@section GNU C/C++ cross compiler toolset complete <INSTALL_POINT> is the installation point from the previous step
"Modify the bit script" in the build of the tools.
At this point the GNU C/C++ cross compile tools should be built.

View File

@@ -6,14 +6,14 @@
@c $Id$ @c $Id$
@c @c
@chapter Building the GDB Debugger @chapter Building the GNU Debugger
GDB is not currently RTEMS aware. The following configurations have been GDB is not currently RTEMS aware. The following configurations have been
successfully used with RTEMS applications. successfully used with RTEMS applications.
@section GDB with Sparc Instruction Simulation (SIS) @section GDB with Sparc Instruction Simulation (SIS)
@subsection Unarchive the gdb distribution @subsection Unarchive the gdb distribution (SIS)
Use the following commands to unarchive the gdb distribution: Use the following commands to unarchive the gdb distribution:
@@ -24,7 +24,7 @@ tar xzf ../arc/gdb-980122.tar.gz
The directory gdb-980122 is created under the tools directory. The directory gdb-980122 is created under the tools directory.
@subsection Make the build directory @subsection Make the build directory (SIS)
Create a build directory for the SIS Debugger Create a build directory for the SIS Debugger
@@ -33,7 +33,7 @@ cd tools
mkdir build-sis mkdir build-sis
@end example @end example
@subsection Configure for the build @subsection Configure for the build (SIS)
Configure the general gdb distribution for Sparc Instruction Simulation Configure the general gdb distribution for Sparc Instruction Simulation
@@ -51,7 +51,7 @@ Where:
<INSTALL_POINT_FOR_SIS> is a unique location where the gdb with SIS will be <INSTALL_POINT_FOR_SIS> is a unique location where the gdb with SIS will be
created. created.
@subsection Make the debugger @subsection Make the debugger (SIS)
From tools/build-sis run: From tools/build-sis run:
@@ -60,9 +60,9 @@ gmake
@end example @end example
@section GDB with PowerPC instruction Simulation(PSIM) @section GDB with PowerPC Instruction Simulator (PSIM)
@subsection Unarchive the gdb distribution @subsection Unarchive the gdb distribution (PSIM)
Use the following commands to unarchive the gdb distribution: Use the following commands to unarchive the gdb distribution:
@@ -74,7 +74,7 @@ tar xzf ../arc/gdb-980122.tar.gz
The directory gdb-980122 is created under the tools directory. The directory gdb-980122 is created under the tools directory.
@subsection Make the build directory @subsection Make the build directory (PSIM)
Create a build directory for the SIS Debugger Create a build directory for the SIS Debugger
@@ -105,7 +105,7 @@ Where:
be created. be created.
@subsection Make the debugger @subsection Make the debugger (PSIM)
From tools/build-ppc run: From tools/build-ppc run:
@@ -116,7 +116,7 @@ gmake
@section GDB with Dink32 @section GDB with Dink32
@subsection Unarchive the gdb distribution @subsection Unarchive the gdb distribution (DINK32)
Use the following commands to unarchive the gdb distribution: Use the following commands to unarchive the gdb distribution:
@@ -128,9 +128,9 @@ tar xzf ../arc/gdb-980122.tar.gz
The directory gdb-980122 is created under the tools directory. The directory gdb-980122 is created under the tools directory.
@subsection Make the build directory @subsection Make the build directory (DINK32)
Create a build directory for the SIS Debugger Create a build directory for the DINK32 Debugger
@example @example
cd tools cd tools
@@ -149,7 +149,7 @@ tools/gdb-980122/gdb/dink32-rom.c
@end example @end example
@subsection Configure for the build @subsection Configure for the build (DINK32)
Configure the general gdb distribution for Sparc Instruction Simulation Configure the general gdb distribution for Sparc Instruction Simulation
@@ -166,7 +166,7 @@ Where:
<INSTALL_POINT_FOR_DINK32> is a unique location where the gdb Dink32 will <INSTALL_POINT_FOR_DINK32> is a unique location where the gdb Dink32 will
be created. be created.
@subsection Make the debugger @subsection Make the debugger (DINK32)
From tools/build-dink32 run: From tools/build-dink32 run:

View File

@@ -12,8 +12,10 @@ If you are already familiar with the concepts behind a cross compiler and
have a background in Unix these instructions should provide the bare have a background in Unix these instructions should provide the bare
essentials for performing a setup of the following items: essentials for performing a setup of the following items:
<EFBFBD> GNU C/C++ Cross Compilation Tools for RTEMS on your host system @itemize @bullet
<EFBFBD> RTEMS OS for the target host @item GNU C/C++ Cross Compilation Tools for RTEMS on your host system
<EFBFBD> GDB Debugger @item RTEMS OS for the target host
@item GDB Debugger
@end itemize

View File

@@ -62,15 +62,15 @@ END-INFO-DIR-ENTRY
@c This prevents a black box from being printed on "overflow" lines. @c This prevents a black box from being printed on "overflow" lines.
@c The alternative is to rework a sentence to avoid this problem. @c The alternative is to rework a sentence to avoid this problem.
@include intro.t @include intro.texi
@include require.t @include require.texi
@include buildc.t @include buildc.texi
@include buildrt.t @include buildrt.texi
@include sample.t @include sample.texi
@include gdb.t @include gdb.texi
@ifinfo @ifinfo
@node Top, Preface, (dir), (dir) @node Top, Introduction, (dir), (dir)
@top started @top started
This is the online version of the Getting Started with RTEMS for C/C++ This is the online version of the Getting Started with RTEMS for C/C++
@@ -93,7 +93,7 @@ Developers.
@c Need to copy the emacs stuff and "trailer stuff" (index, toc) into here @c Need to copy the emacs stuff and "trailer stuff" (index, toc) into here
@c @c
@node Command and Variable Index, Concept Index, Overall Summary, Top @node Command and Variable Index, Concept Index, Make the debugger (DINK32), Top
@unnumbered Command and Variable Index @unnumbered Command and Variable Index
There are currently no Command and Variable Index entries. There are currently no Command and Variable Index entries.