Go to the previous, next section.

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 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 previous, next section.