Go to the first, previous, next, last section, table of contents.

# Invoking `configure`

Cygnus `configure` is a shell script which resides in a source tree. The usual way to invoke `configure` is from the shell, as follows:

    eg$ ./configure hosttype

This prepares the source in the current directory (``.'`) to be compiled for a hosttype environment. It assumes that you wish to build programs and files in the default build directory (also the current directory, ``.'`). If you do not specify a value for hosttype, Cygnus `configure` will attempt to discover this information by itself (see section Determining system information). For information on hosttype environments, See section Host.

All GNU software is packaged with one or more `configure` script(s) (see section `How Configuration Should Work' in GNU Coding Standards). By using `configure` you prepare the source for your specific environment by selecting and using ``Makefile'` fragments and fragments of shell scripts, which are prepared in advance and stored with the source.

`configure`'s command-line options also allow you to specify other aspects of the source configuration:

      configure hosttype  [--target=target] [--srcdir=dir] [--rm]
                [--site=site] [--prefix=dir] [--exec-prefix=dir]
                [--program-prefix=string] [--tmpdir=dir]
                [--with-package[=yes/no]] [--without-package]
                [--enable-feature[=yes/no]] [--disable-feature]
                [--norecursion] [--nfp] [-s] [-v] [-V | --version] [--help]

`--target=target`
  Requests that the sources be configured to target the target machine. If no target is specified explicitly, the target is assumed to be the same as the host (i.e., a native configuration). See section Host, and section Target, for discussions of each.
`--srcdir=dir`
  Direct each generated ``Makefile'` to use the sources located in directory dir. Use this option whenever you wish the object code to reside in a different place from the source code. The build directory is always assumed to be the directory you call `configure` from. See section Build directories, for an example. If the source directory is not specified, `configure` assumes that the source is in your current directory. If `configure` finds no ``configure.in'` there, it searches in the same directory that the `configure` script itself lies in. Pathnames specified (Values for dir) can be either absolute relative to the build directory.
`--rm`
  Remove the configuration specified by hosttype and the other command-line options, rather than create it.

  > Note: We recommend that you use ``make distclean'` rather than use this option; see section `Invoking `make`' in GNU Make, for details on ``make distclean'`.

`--site=site`
  Generate the ``Makefile'` using site-specific ``Makefile'` fragments for site. See section Adding information about local conventions.
`--prefix=dir`
  Configure the source to install programs and files under directory dir. This option sets the variable ``prefix'`. Each generated ``Makefile'` will have its ``prefix'` variables set to this value. (See section What `configure` really does.)
`--exec-prefix=dir`
  Configure the source to install host dependent files in dir. This option sets the variable ``exec_prefix'`. Each generated ``Makefile'` will have its ``exec_prefix'` variables set to this value. (See section What `configure` really does.)
`--program-prefix=string`
  Configure the source to install certain programs using string as a prefix. This applies to programs which might be used for cross-compilation, such as the compiler and the binary utilities, and also to programs which have the same names as common Unix programs, such as `make`. This option sets the variable ``program_prefix'`. Each generated ``Makefile'` will have its ``program_prefix'` variables set to this value. (See section What `configure` really does.)
`--tmpdir=tmpdir`
  Use the directory tmpdir for `configure`'s temporary files. The default is the value of the environment variable `TMPDIR`, or ``/tmp'` if the environment variable is not set.
`--with-package[=yes/no]`
`--without-package`
  Indicate that package is present, or not present, depending on yes/no. If yes/no is nonexistent, its value is assumed to be `yes`. ``--without-package'` is equivalent to ``--with-package=no'`. For example, if you wish to configure the program `gcc` for a Sun SPARCstation running SunOS 4.x, and you want `gcc` to use the GNU linker `ld`, you can configure `gcc` using

      eg$ configure --with-gnu-ld sun4

  See section What `configure` really does, for details. See the installation or release notes for your particular package for details on which other package options are recognized.
`--enable-feature[=yes/no]`
`--disable-feature`
  Include feature, or not, depending on yes/no. If yes/no is nonexistent, its value is assumed to be `yes`. ``--disable-feature'` is equivalent to ``--enable-feature=no'`. See section What `configure` really does, for details. See the installation or release notes for your particular package for details on which other feature options are recognized.
`--norecursion`
  Configure only this directory; ignore any subdirectories. This is used by the executable shell script ``config.status'` to reconfigure only the current directory; it is most often used non-interactively, when `make` is invoked. (See section `config.status`.)
`--nfp`
  Assume that the intended hosttype has no floating point unit.
`-s`
  Suppress status output. This option is used internally by `configure` when calling itself recursively in subdirectories. You can override this option with the `--verbose` option.
`-v`
`--verbose`
  Print status lines for each directory configured. Normally, only the status lines for the initial working directory are printed.
`--version`
`-V`
  Print the `configure` version number.
`--help`
  Print a short summary of how to invoke `configure`.

Note: You may introduce options with a single dash, ``-'`, rather than two dashes, ``--'`. However, you may not be able to truncate long option names when using a single dash. When using two dashes, options may be abbreviated as long as each option can be uniquely identified. For example,

    eg$ configure --s=/u/me/src hosttype

is ambiguous, as ``--s'` could refer to either ``--site'` or ``--srcdir'`. However,

    eg$ configure --src=/u/me/src hosttype

is a valid abbreviation.

Go to the first, previous, next, last section, table of contents.