1 | @c |
---|
2 | @c COPYRIGHT (c) 1988-2002. |
---|
3 | @c On-Line Applications Research Corporation (OAR). |
---|
4 | @c All rights reserved. |
---|
5 | @c |
---|
6 | @c $Id$ |
---|
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 <D.J@@fiddes.surfaid.org>} |
---|
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 | |
---|