Go to the previous, next section.

Building Development Environments

The GNU development tools can not only be built in a number of host development environments, they can also be configured to create a number of different development environments on each of those hosts. We refer to a specific development environment created as a target. That is, the word target refers to the development environment produced by compiling this source and installing the resulting programs.

For the GNU development tools, the default target is the same as the host. That is, the development environment produced is intended to be compatible with the environment used to build the tools.

In the example above, we created two configurations, one for sun4 and one for sun3. The first configuration is expecting to be built in a sun4 development environment, to create a sun4 development environment. It doesn't necessarily need to be built on a sun4 if a sun4 development environment is available elsewhere. Likewise, if the available sun4 development environment produces executables intended for something other than sun4, then the development environment built from this sun4 configuration will run on something other than a sun4. From the point of view of the configuration system and the GNU development tools source, this doesn't matter. What matters is that they will be built in a sun4 environment.

Similarly, the second configuration given above is expecting to be built in a sun3 development environment, to create a sun3 development environment.

The development environment produced is a configuration time option, just like $(prefix).

./configure sun4 --prefix=/local --target=sun3
./configure sun3 --prefix=/local --target=sun4

In this example, like before, we create two configurations. The first is intended to be built in a sun4 environment, in subdirectories, to be installed in `/local'. The second is intended to be built in a sun3 environment, in subdirectories, to be installed in `/local'.

Unlike the previous example, the first configuration will produce a sun3 development environment, perhaps even suitable for building the second configuration. Likewise, the second configuration will produce a sun4 development environment, perhaps even suitable for building the first configuration.

The development environment used to build these configurations will determine the machines on which the resulting development environments can be used.

Go to the previous, next section.