Annotation of embedaddon/igmpproxy/INSTALL, revision 1.1
1.1 ! misho 1: Installation Instructions
! 2: *************************
! 3:
! 4: Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
! 5: 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
! 6:
! 7: This file is free documentation; the Free Software Foundation gives
! 8: unlimited permission to copy, distribute and modify it.
! 9:
! 10: Basic Installation
! 11: ==================
! 12:
! 13: Briefly, the shell commands `./configure; make; make install' should
! 14: configure, build, and install this package. The following
! 15: more-detailed instructions are generic; see the `README' file for
! 16: instructions specific to this package.
! 17:
! 18: The `configure' shell script attempts to guess correct values for
! 19: various system-dependent variables used during compilation. It uses
! 20: those values to create a `Makefile' in each directory of the package.
! 21: It may also create one or more `.h' files containing system-dependent
! 22: definitions. Finally, it creates a shell script `config.status' that
! 23: you can run in the future to recreate the current configuration, and a
! 24: file `config.log' containing compiler output (useful mainly for
! 25: debugging `configure').
! 26:
! 27: It can also use an optional file (typically called `config.cache'
! 28: and enabled with `--cache-file=config.cache' or simply `-C') that saves
! 29: the results of its tests to speed up reconfiguring. Caching is
! 30: disabled by default to prevent problems with accidental use of stale
! 31: cache files.
! 32:
! 33: If you need to do unusual things to compile the package, please try
! 34: to figure out how `configure' could check whether to do them, and mail
! 35: diffs or instructions to the address given in the `README' so they can
! 36: be considered for the next release. If you are using the cache, and at
! 37: some point `config.cache' contains results you don't want to keep, you
! 38: may remove or edit it.
! 39:
! 40: The file `configure.ac' (or `configure.in') is used to create
! 41: `configure' by a program called `autoconf'. You need `configure.ac' if
! 42: you want to change it or regenerate `configure' using a newer version
! 43: of `autoconf'.
! 44:
! 45: The simplest way to compile this package is:
! 46:
! 47: 1. `cd' to the directory containing the package's source code and type
! 48: `./configure' to configure the package for your system.
! 49:
! 50: Running `configure' might take a while. While running, it prints
! 51: some messages telling which features it is checking for.
! 52:
! 53: 2. Type `make' to compile the package.
! 54:
! 55: 3. Optionally, type `make check' to run any self-tests that come with
! 56: the package.
! 57:
! 58: 4. Type `make install' to install the programs and any data files and
! 59: documentation.
! 60:
! 61: 5. You can remove the program binaries and object files from the
! 62: source code directory by typing `make clean'. To also remove the
! 63: files that `configure' created (so you can compile the package for
! 64: a different kind of computer), type `make distclean'. There is
! 65: also a `make maintainer-clean' target, but that is intended mainly
! 66: for the package's developers. If you use it, you may have to get
! 67: all sorts of other programs in order to regenerate files that came
! 68: with the distribution.
! 69:
! 70: 6. Often, you can also type `make uninstall' to remove the installed
! 71: files again.
! 72:
! 73: Compilers and Options
! 74: =====================
! 75:
! 76: Some systems require unusual options for compilation or linking that
! 77: the `configure' script does not know about. Run `./configure --help'
! 78: for details on some of the pertinent environment variables.
! 79:
! 80: You can give `configure' initial values for configuration parameters
! 81: by setting variables in the command line or in the environment. Here
! 82: is an example:
! 83:
! 84: ./configure CC=c99 CFLAGS=-g LIBS=-lposix
! 85:
! 86: *Note Defining Variables::, for more details.
! 87:
! 88: Compiling For Multiple Architectures
! 89: ====================================
! 90:
! 91: You can compile the package for more than one kind of computer at the
! 92: same time, by placing the object files for each architecture in their
! 93: own directory. To do this, you can use GNU `make'. `cd' to the
! 94: directory where you want the object files and executables to go and run
! 95: the `configure' script. `configure' automatically checks for the
! 96: source code in the directory that `configure' is in and in `..'.
! 97:
! 98: With a non-GNU `make', it is safer to compile the package for one
! 99: architecture at a time in the source code directory. After you have
! 100: installed the package for one architecture, use `make distclean' before
! 101: reconfiguring for another architecture.
! 102:
! 103: On MacOS X 10.5 and later systems, you can create libraries and
! 104: executables that work on multiple system types--known as "fat" or
! 105: "universal" binaries--by specifying multiple `-arch' options to the
! 106: compiler but only a single `-arch' option to the preprocessor. Like
! 107: this:
! 108:
! 109: ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
! 110: CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
! 111: CPP="gcc -E" CXXCPP="g++ -E"
! 112:
! 113: This is not guaranteed to produce working output in all cases, you
! 114: may have to build one architecture at a time and combine the results
! 115: using the `lipo' tool if you have problems.
! 116:
! 117: Installation Names
! 118: ==================
! 119:
! 120: By default, `make install' installs the package's commands under
! 121: `/usr/local/bin', include files under `/usr/local/include', etc. You
! 122: can specify an installation prefix other than `/usr/local' by giving
! 123: `configure' the option `--prefix=PREFIX'.
! 124:
! 125: You can specify separate installation prefixes for
! 126: architecture-specific files and architecture-independent files. If you
! 127: pass the option `--exec-prefix=PREFIX' to `configure', the package uses
! 128: PREFIX as the prefix for installing programs and libraries.
! 129: Documentation and other data files still use the regular prefix.
! 130:
! 131: In addition, if you use an unusual directory layout you can give
! 132: options like `--bindir=DIR' to specify different values for particular
! 133: kinds of files. Run `configure --help' for a list of the directories
! 134: you can set and what kinds of files go in them.
! 135:
! 136: If the package supports it, you can cause programs to be installed
! 137: with an extra prefix or suffix on their names by giving `configure' the
! 138: option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
! 139:
! 140: Optional Features
! 141: =================
! 142:
! 143: Some packages pay attention to `--enable-FEATURE' options to
! 144: `configure', where FEATURE indicates an optional part of the package.
! 145: They may also pay attention to `--with-PACKAGE' options, where PACKAGE
! 146: is something like `gnu-as' or `x' (for the X Window System). The
! 147: `README' should mention any `--enable-' and `--with-' options that the
! 148: package recognizes.
! 149:
! 150: For packages that use the X Window System, `configure' can usually
! 151: find the X include and library files automatically, but if it doesn't,
! 152: you can use the `configure' options `--x-includes=DIR' and
! 153: `--x-libraries=DIR' to specify their locations.
! 154:
! 155: Particular systems
! 156: ==================
! 157:
! 158: On HP-UX, the default C compiler is not ANSI C compatible. If GNU
! 159: CC is not installed, it is recommended to use the following options in
! 160: order to use an ANSI C compiler:
! 161:
! 162: ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
! 163:
! 164: and if that doesn't work, install pre-built binaries of GCC for HP-UX.
! 165:
! 166: On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
! 167: parse its `<wchar.h>' header file. The option `-nodtk' can be used as
! 168: a workaround. If GNU CC is not installed, it is therefore recommended
! 169: to try
! 170:
! 171: ./configure CC="cc"
! 172:
! 173: and if that doesn't work, try
! 174:
! 175: ./configure CC="cc -nodtk"
! 176:
! 177: On Solaris, don't put `/usr/ucb' early in your `PATH'. This
! 178: directory contains several dysfunctional programs; working variants of
! 179: these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
! 180: in your `PATH', put it _after_ `/usr/bin'.
! 181:
! 182: On Haiku, software installed for all users goes in `/boot/common',
! 183: not `/usr/local'. It is recommended to use the following options:
! 184:
! 185: ./configure --prefix=/boot/common
! 186:
! 187: Specifying the System Type
! 188: ==========================
! 189:
! 190: There may be some features `configure' cannot figure out
! 191: automatically, but needs to determine by the type of machine the package
! 192: will run on. Usually, assuming the package is built to be run on the
! 193: _same_ architectures, `configure' can figure that out, but if it prints
! 194: a message saying it cannot guess the machine type, give it the
! 195: `--build=TYPE' option. TYPE can either be a short name for the system
! 196: type, such as `sun4', or a canonical name which has the form:
! 197:
! 198: CPU-COMPANY-SYSTEM
! 199:
! 200: where SYSTEM can have one of these forms:
! 201:
! 202: OS
! 203: KERNEL-OS
! 204:
! 205: See the file `config.sub' for the possible values of each field. If
! 206: `config.sub' isn't included in this package, then this package doesn't
! 207: need to know the machine type.
! 208:
! 209: If you are _building_ compiler tools for cross-compiling, you should
! 210: use the option `--target=TYPE' to select the type of system they will
! 211: produce code for.
! 212:
! 213: If you want to _use_ a cross compiler, that generates code for a
! 214: platform different from the build platform, you should specify the
! 215: "host" platform (i.e., that on which the generated programs will
! 216: eventually be run) with `--host=TYPE'.
! 217:
! 218: Sharing Defaults
! 219: ================
! 220:
! 221: If you want to set default values for `configure' scripts to share,
! 222: you can create a site shell script called `config.site' that gives
! 223: default values for variables like `CC', `cache_file', and `prefix'.
! 224: `configure' looks for `PREFIX/share/config.site' if it exists, then
! 225: `PREFIX/etc/config.site' if it exists. Or, you can set the
! 226: `CONFIG_SITE' environment variable to the location of the site script.
! 227: A warning: not all `configure' scripts look for a site script.
! 228:
! 229: Defining Variables
! 230: ==================
! 231:
! 232: Variables not defined in a site shell script can be set in the
! 233: environment passed to `configure'. However, some packages may run
! 234: configure again during the build, and the customized values of these
! 235: variables may be lost. In order to avoid this problem, you should set
! 236: them in the `configure' command line, using `VAR=value'. For example:
! 237:
! 238: ./configure CC=/usr/local2/bin/gcc
! 239:
! 240: causes the specified `gcc' to be used as the C compiler (unless it is
! 241: overridden in the site shell script).
! 242:
! 243: Unfortunately, this technique does not work for `CONFIG_SHELL' due to
! 244: an Autoconf bug. Until the bug is fixed you can use this workaround:
! 245:
! 246: CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
! 247:
! 248: `configure' Invocation
! 249: ======================
! 250:
! 251: `configure' recognizes the following options to control how it
! 252: operates.
! 253:
! 254: `--help'
! 255: `-h'
! 256: Print a summary of all of the options to `configure', and exit.
! 257:
! 258: `--help=short'
! 259: `--help=recursive'
! 260: Print a summary of the options unique to this package's
! 261: `configure', and exit. The `short' variant lists options used
! 262: only in the top level, while the `recursive' variant lists options
! 263: also present in any nested packages.
! 264:
! 265: `--version'
! 266: `-V'
! 267: Print the version of Autoconf used to generate the `configure'
! 268: script, and exit.
! 269:
! 270: `--cache-file=FILE'
! 271: Enable the cache: use and save the results of the tests in FILE,
! 272: traditionally `config.cache'. FILE defaults to `/dev/null' to
! 273: disable caching.
! 274:
! 275: `--config-cache'
! 276: `-C'
! 277: Alias for `--cache-file=config.cache'.
! 278:
! 279: `--quiet'
! 280: `--silent'
! 281: `-q'
! 282: Do not print messages saying which checks are being made. To
! 283: suppress all normal output, redirect it to `/dev/null' (any error
! 284: messages will still be shown).
! 285:
! 286: `--srcdir=DIR'
! 287: Look for the package's source code in directory DIR. Usually
! 288: `configure' can determine that directory automatically.
! 289:
! 290: `--prefix=DIR'
! 291: Use DIR as the installation prefix. *Note Installation Names::
! 292: for more details, including other options available for fine-tuning
! 293: the installation locations.
! 294:
! 295: `--no-create'
! 296: `-n'
! 297: Run the configure checks, but stop before creating any output
! 298: files.
! 299:
! 300: `configure' also accepts some other, not widely useful, options. Run
! 301: `configure --help' for more details.
! 302:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>