1 |
1026 |
ivang |
@c
|
2 |
|
|
@c COPYRIGHT (c) 1988-2002.
|
3 |
|
|
@c On-Line Applications Research Corporation (OAR).
|
4 |
|
|
@c All rights reserved.
|
5 |
|
|
@c
|
6 |
|
|
@c binaries.t,v 1.7 2002/01/17 21:47:46 joel Exp
|
7 |
|
|
@c
|
8 |
|
|
|
9 |
|
|
@chapter Prebuilt Toolset Executables
|
10 |
|
|
|
11 |
|
|
Precompiled toolsets are available for Linux, Cygwin, FreeBSD,
|
12 |
|
|
and Solaris. These are packaged in the following formats:
|
13 |
|
|
|
14 |
|
|
@itemize @bullet
|
15 |
|
|
@item Linux - RPM and Debian
|
16 |
|
|
@item Cygwin - RPM and zipped tar
|
17 |
|
|
@item FreeBSD - native package
|
18 |
|
|
@item Solaris - RPM and zipped tar
|
19 |
|
|
@end itemize
|
20 |
|
|
|
21 |
|
|
RPM is an acronym for the RedHat Package Manager. RPM is the
|
22 |
|
|
native package installer for many Linux distributions including
|
23 |
|
|
RedHat and SuSE. RPM supports other operating systems including
|
24 |
|
|
Cygwin. @uref{mailto:D.J@@fiddes.surfaid.org,David Fiddes }
|
25 |
|
|
did the initial groundwork that lead to Cygwin RPMs being available.
|
26 |
|
|
|
27 |
|
|
The prebuilt binaries are intended to be easy to install and
|
28 |
|
|
the instructions are similar regardless of the host environment.
|
29 |
|
|
There are a few structural issues with the packaging of the RTEMS
|
30 |
|
|
Cross Toolset binaries that you need to be aware of.
|
31 |
|
|
|
32 |
|
|
@enumerate
|
33 |
|
|
@item There are dependencies between the various packages.
|
34 |
|
|
This requires that certain packages be installed before others may be.
|
35 |
|
|
Some packaging formats enforce this dependency.
|
36 |
|
|
|
37 |
|
|
@item Some packages are target CPU family independent and shared
|
38 |
|
|
across all target architectures. These are referred to as
|
39 |
|
|
"base" packages.
|
40 |
|
|
|
41 |
|
|
@item If buildable for a particular CPU, RPMs are provided for
|
42 |
|
|
Chill, Java (gcj), Fortran (g77), and Objective-C (objc). These
|
43 |
|
|
binaries are strictly optional.
|
44 |
|
|
|
45 |
|
|
@end enumerate
|
46 |
|
|
|
47 |
|
|
NOTE: Installing toolset binaries does not install RTEMS itself, only the tools
|
48 |
|
|
required to build RTEMS. See @ref{Building RTEMS} for the next
|
49 |
|
|
step in the process.
|
50 |
|
|
|
51 |
|
|
@section RPMs
|
52 |
|
|
|
53 |
|
|
This section provides information on installing and removing RPMs.
|
54 |
|
|
|
55 |
|
|
@subsection Installing RPMs
|
56 |
|
|
|
57 |
|
|
The following is a sample session illustrating the installation
|
58 |
|
|
of a C/C++ toolset targeting the SPARC architecture.
|
59 |
|
|
|
60 |
|
|
@example
|
61 |
|
|
rpm -i rtems-base-binutils-2.9.5.0.24-1.i386.rpm
|
62 |
|
|
rpm -i sparc-rtems-binutils-2.9.5.0.24-1.i386.rpm
|
63 |
|
|
rpm -i rtems-base-gcc-gcc2.95.2newlib1.8.2-7.i386.rpm
|
64 |
|
|
rpm -i sparc-rtems-gcc-gcc2.95.2newlib1.8.2-7.i386.rpm
|
65 |
|
|
rpm -i rtems-base-gdb-4.18-4.i386.rpm
|
66 |
|
|
rpm -i sparc-rtems-gdb-4.18-4.i386.rpm
|
67 |
|
|
@end example
|
68 |
|
|
|
69 |
|
|
Upon successful completion of the above command sequence, a
|
70 |
|
|
C/C++ cross development toolset targeting the SPARC is
|
71 |
|
|
installed in @code{/opt/rtems}. In order to use this toolset,
|
72 |
|
|
the directory @code{/opt/rtems/bin} must be included in your
|
73 |
|
|
PATH.
|
74 |
|
|
|
75 |
|
|
Once you have successfully installed the RPMs for BINUTILS, GCC,
|
76 |
|
|
NEWLIB, and GDB, then you may proceed directly to @ref{Building RTEMS}.
|
77 |
|
|
|
78 |
|
|
@subsection Determining Which RTEMS RPMs are Installed
|
79 |
|
|
|
80 |
|
|
The following command will report which RTEMS RPMs are currently
|
81 |
|
|
installed:
|
82 |
|
|
|
83 |
|
|
@example
|
84 |
|
|
rpm -q -g rtems
|
85 |
|
|
@end example
|
86 |
|
|
|
87 |
|
|
@subsection Removing RPMs
|
88 |
|
|
|
89 |
|
|
The following is a sample session illustrating the removal
|
90 |
|
|
of a C/C++ toolset targeting the SPARC architecture.
|
91 |
|
|
|
92 |
|
|
@example
|
93 |
|
|
rpm -e sparc-rtems-gdb-4.18-2.i386.rpm
|
94 |
|
|
rpm -e rtems-base-gdb-4.18-2.i386.rpm
|
95 |
|
|
rpm -e sparc-rtems-gcc-gcc2.95.2newlib1.8.2-4.i386.rpm
|
96 |
|
|
rpm -e rtems-base-gcc-gcc2.95.2newlib1.8.2-4.i386.rpm
|
97 |
|
|
rpm -e sparc-rtems-binutils-2.9.5.0.24-1.i386.rpm
|
98 |
|
|
rpm -e rtems-base-binutils-2.9.5.0.24-1.i386.rpm
|
99 |
|
|
@end example
|
100 |
|
|
|
101 |
|
|
NOTE: If you have installed any RTEMS BSPs, then it is likely that
|
102 |
|
|
RPM will complain about not being able to remove everything.
|
103 |
|
|
|
104 |
|
|
@section Zipped Tar Files
|
105 |
|
|
|
106 |
|
|
This section provides information on installing and removing
|
107 |
|
|
Zipped Tar Files (.tgz).
|
108 |
|
|
|
109 |
|
|
@subsection Installing Zipped Tar Files
|
110 |
|
|
|
111 |
|
|
The following is a sample session illustrating the installation
|
112 |
|
|
of a C/C++ toolset targeting the SPARC architecture assuming
|
113 |
|
|
that GNU tar is installed as @code{tar}:
|
114 |
|
|
|
115 |
|
|
@example
|
116 |
|
|
cd /
|
117 |
|
|
tar xzf rtems-base-binutils-2.9.5.0.24-1.tgz
|
118 |
|
|
tar xzf sparc-rtems-binutils-2.9.5.0.24-1.tgz
|
119 |
|
|
tar xzf rtems-base-gcc-gcc2.95.2newlib1.8.2-4.tgz
|
120 |
|
|
tar xzf sparc-rtems-gcc-gcc2.95.2newlib1.8.2-4.tgz
|
121 |
|
|
tar xzf rtems-base-gdb-4.18-2.tgz
|
122 |
|
|
tar xzf sparc-rtems-gdb-4.18-2.tgz
|
123 |
|
|
@end example
|
124 |
|
|
|
125 |
|
|
Upon successful completion of the above command sequence, a
|
126 |
|
|
C/C++ cross development toolset targeting the SPARC is
|
127 |
|
|
installed in @code{/opt/rtems}. In order to use this toolset,
|
128 |
|
|
the directory @code{/opt/rtems/bin} must be included in your
|
129 |
|
|
PATH.
|
130 |
|
|
|
131 |
|
|
@subsection Removing Zipped Tar Files
|
132 |
|
|
|
133 |
|
|
There is no automatic way to remove the contents of a @code{tgz} once
|
134 |
|
|
it is installed. The contents of the directory @code{/opt/rtems}
|
135 |
|
|
can be removed but this will likely result in other packages
|
136 |
|
|
being removed as well.
|
137 |
|
|
|
138 |
|
|
|