Next: Architecture Selection, Up: Selecting the Target System

### 17.1 Target Selection

A target is an object file format. A given target may be supported for multiple architectures (see Architecture Selection). A target selection may also have variations for different operating systems or architectures.

The command to list valid target values is objdump -i (the first column of output contains the relevant information).

Some sample values are: a.out-hp300bsd, ecoff-littlemips, a.out-sunos-big.

You can also specify a target using a configuration triplet. This is the same sort of name that is passed to configure to specify a target. When you use a configuration triplet as an argument, it must be fully canonicalized. You can see the canonical version of a triplet by running the shell script config.sub which is included with the sources.

Some sample configuration triplets are: m68k-hp-bsd, mips-dec-ultrix, sparc-sun-sunos.

#### objdump Target

Ways to specify:

1. command line option: -b or --target
2. environment variable `GNUTARGET`
3. deduced from the input file

#### objcopy and strip Input Target

Ways to specify:

1. command line options: -I or --input-target, or -F or --target
2. environment variable `GNUTARGET`
3. deduced from the input file

#### objcopy and strip Output Target

Ways to specify:

1. command line options: -O or --output-target, or -F or --target
2. the input target (see “objcopy and strip Input Target” above)
3. environment variable `GNUTARGET`
4. deduced from the input file

#### nm, size, and strings Target

Ways to specify:

1. command line option: --target
2. environment variable `GNUTARGET`
3. deduced from the input file