[root@localhost nginx-1.26.3]# ./configure --help --help print this message
--prefix=PATH set installation prefix --sbin-path=PATH set nginx binary pathname --modules-path=PATH set modules path --conf-path=PATH set nginx.conf pathname --error-log-path=PATH set error log pathname --pid-path=PATH set nginx.pid pathname --lock-path=PATH set nginx.lock pathname
--user=USER set non-privileged user for worker processes --group=GROUP set non-privileged group for worker processes
--build=NAME set build name --builddir=DIR set build directory
--with-http_perl_module enable ngx_http_perl_module --with-http_perl_module=dynamic enable dynamic ngx_http_perl_module --with-perl_modules_path=PATH set Perl modules path --with-perl=PATH set perl binary pathname
--http-log-path=PATH set http access log pathname --http-client-body-temp-path=PATH set path to store http client request body temporary files --http-proxy-temp-path=PATH set path to store http proxy temporary files --http-fastcgi-temp-path=PATH set path to store http fastcgi temporary files --http-uwsgi-temp-path=PATH set path to store http uwsgi temporary files --http-scgi-temp-path=PATH set path to store http scgi temporary files
--without-http disable HTTP server --without-http-cache disable HTTP cache
--with-cc=PATH set C compiler pathname --with-cpp=PATH set C preprocessor pathname --with-cc-opt=OPTIONS set additional C compiler options --with-ld-opt=OPTIONS set additional linker options --with-cpu-opt=CPU build for the specified CPU, valid values: pentium, pentiumpro, pentium3, pentium4, athlon, opteron, sparc32, sparc64, ppc64
--without-pcre disable PCRE library usage --with-pcre force PCRE library usage --with-pcre=DIR set path to PCRE library sources --with-pcre-opt=OPTIONS set additional build options for PCRE --with-pcre-jit build PCRE with JIT compilation support --without-pcre2 do not use PCRE2 library
--with-zlib=DIR set path to zlib library sources --with-zlib-opt=OPTIONS set additional build options for zlib --with-zlib-asm=CPU use zlib assembler sources optimized for the specified CPU, valid values: pentium, pentiumpro
--with-libatomic force libatomic_ops library usage --with-libatomic=DIR set path to libatomic_ops library sources
--with-openssl=DIR set path to OpenSSL library sources --with-openssl-opt=OPTIONS set additional build options for OpenSSL
[root@gzbh-dev-zhaolanqi git-2.49.0]# ./configure --help `configure' configures git @GIT_VERSION@ to adapt to many kinds of systems.
Usage: ./configure [OPTION]... [VAR=VALUE]...
To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables.
Defaults for the options are specified in brackets.
Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print `checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for `--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or `..']
Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX]
By default, `make install' will install all the files in `/usr/local/bin', `/usr/local/lib' etc. You can specify an installation prefix other than `/usr/local' using `--prefix', for instance `--prefix=$HOME'.
For better control, use the options below.
Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/git] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR]
Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-pthreads=FLAGS FLAGS is the value to pass to the compiler to enable POSIX Threads. The default if FLAGS is not specified is to try first -pthread and then -lpthread. --disable-pthreads will disable threading. --enable-jsmin=PATH PATH is the name of a JavaScript minifier or the absolute path to one. --enable-cssmin=PATH PATH is the name of a CSS minifier or the absolute path to one.
Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-sane-tool-path=DIR-1[:DIR-2...:DIR-n] Directories to prepend to PATH in build system and generated scripts --with-lib=ARG ARG specifies alternative name for lib directory --with-openssl use OpenSSL library (default is YES) ARG can be prefix for openssl library and headers --with-libpcre1 DEPRECATED --with-libpcre synonym for --with-libpcre2 --with-libpcre2 support Perl-compatible regexes via libpcre2 (default is NO) ARG can be also prefix for libpcre library and headers --with-curl support http(s):// transports (default is YES) ARG can be also prefix for curl library and headers --with-expat support git-push using http:// and https:// transports via WebDAV (default is YES) ARG can be also prefix for expat library and headers --without-iconv if your architecture doesn't properly support iconv --with-iconv=PATH PATH is prefix for libiconv library and headers used only if you need linking with libiconv --with-gitconfig=VALUE Use VALUE instead of /etc/gitconfig as the global git configuration file. If VALUE is not fully qualified it will be interpreted as a path relative to the computed prefix at runtime. --with-gitattributes=VALUE Use VALUE instead of /etc/gitattributes as the global git attributes file. If VALUE is not fully qualified it will be interpreted as a path relative to the computed prefix at runtime. --with-pager=VALUE Use VALUE as the fall-back pager instead of 'less'. This is used by things like 'git log' when the user does not specify a pager to use through alternate methods. eg: /usr/bin/pager --with-editor=VALUE Use VALUE as the fall-back editor instead of 'vi'. This is used by things like 'git commit' when the user does not specify a preferred editor through other methods. eg: /usr/bin/editor --with-shell=PATH provide PATH to shell --with-perl=PATH provide PATH to perl --with-python=PATH provide PATH to python --with-zlib=PATH provide PATH to zlib --with-tcltk use Tcl/Tk GUI (default is YES) ARG is the full path to the Tcl/Tk interpreter. Bare --with-tcltk will make the GUI part only if Tcl/Tk interpreter will be found in a system.
Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a nonstandard directory <lib dir> LIBS libraries to pass to the linker, e.g. -l<library> CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if you have headers in a nonstandard directory <include dir> CPP C preprocessor
Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations.
Usage: make [options] [target] ... Options: -b, -m Ignored for compatibility. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -d Print lots of debugging information. --debug[=FLAGS] Print various types of debugging information. -e, --environment-overrides Environment variables override makefiles. --eval=STRING Evaluate STRING as a makefile statement. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from recipes. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -L, --check-symlink-times Use the latest mtime between symlinks and target. -n, --just-print, --dry-run, --recon Don't actually run any recipe; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no recipe; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -R, --no-builtin-variables Disable the built-in variable settings. -s, --silent, --quiet Don't echo recipes. -S, --no-keep-going, --stop Turns off -k. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. --no-print-directory Turn off -w, even if it was turned on implicitly. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. --warn-undefined-variables Warn when an undefined variable is referenced. --warn-undefined-functions Warn when an undefined user function is called.
This program built for x86_64-redhat-linux-gnu Report bugs to <bug-make@gnu.org>
make 或 make all
作用:执行 Makefile 的 all 目标。根据 Makefile 的规则编译源代码(如 .c、.cpp),最终生成的产物是:
可执行文件(如 myapp、main)
静态库文件(.a 文件)
动态库文件(.so 文件)
有时还可能生成中间文件(.o)、头文件、配置文件等
打开 Makefile 文件,前两行内容已说明 Makefile 的默认目标是 all ,所以 make等价于:make all