summaryrefslogtreecommitdiffstats
path: root/doc/started_ada/require.t
blob: aa08dc6e88473695a7881f8c72361e730f69de75 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
@c
@c  COPYRIGHT (c) 1988-1999.
@c  On-Line Applications Research Corporation (OAR).
@c  All rights reserved.
@c
@c  $Id$
@c

@chapter Requirements

A fairly large amount of disk space is required to perform the build of the
GNU C/C++ Cross Compiler Tools for RTEMS. The following table may help in
assessing the amount of disk space required for your installation: 

@example
+------------------------------------+--------------------------+
|              Component             |   Disk Space Required    |
+------------------------------------+--------------------------+
|        archive directory           |        40 Mbytes         |
|        tools src unarchived        |       200 Mbytes         |
|  each individual build directory   |  300 Mbytes worst case   |
|     each installation directory    |      20-200 Mbytes       |
+------------------------------------+--------------------------+
@end example

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:

@itemize @bullet
@item GCC
@item GNAT
@item GNU make
@end itemize

In addition, some native utilities may be deficient for building 
the GNU tools.

@section Native GNAT

The native GNAT must be installed in the default location or built
from source.  No GCC or GNAT environment variables should be set during
the build or use of the cross GNAT/RTEMS toolset as this could result in
an unpredictable mix of native and cross toolsets.

Binaries for native GNAT installations are available at the primary
GNAT ftp site (@value{GNAT-FTP}.   Installation instructions are
included with the binary GNAT distributions.  The binary installation
should be installed in the default location or installed in a 
non-default location and used ONLY to build a native GNAT from source.
This final native GNAT will be used to build the GNAT/RTEMS cross
development toolset.

@subsection Verifying Correct Operation of Native GNAT

It is imperative that the native GNAT installation work correctly for 
the installation of GNAT/RTEMS to succeed.  It is recommended that the
user verify that the native GNAT is installed correctly by performing
these tests:

@subsubsection Native Hello World Test

Place the following Ada source code in hello.adb:

@example
with Text_IO; use Text_IO;

procedure Hello is
begin
   Put_Line ( "Hello World");
end Hello;
@end example

Use the following command sequence to ompile and execute the above program:

@example
gnatmake hello
./hello
@end example

If the message @code{Hello World} is printed, then the native installation
of GNAT operates well enough to proceed.

@subsubsection Insure GCC and GNAT Environment Variables Are Not Set

If any of the following commands produce output, then you have
environment variables overriding the default behavior of the
native GNAT toolset.  These variables will conflict with the cross
toolset.  Please resolve this problem before proceeding further.

@example
echo $GCC_EXEC_PREFIX
echo $ADA_INCLUDE_PATH
echo $ADA_OBJECTS_PATH
echo $LD_RUN_PATH
echo $C_INCLUDE_PATH
@end example