`configure’ 配置 PHP 8.0.7 以适应多种系统。
用法:./configure [OPTION]… [VAR=VALUE]…
要分配环境变量(例如 CC、CFLAGS…),请将它们指定为 VAR=值。有关一些有用变量的说明,请参见下文。
选项的默认值在括号中指定。
配置: -h, --help 显示此帮助并退出 –help=short 显示特定于此包的选项 –help=recursive 显示所有包含的包的简短帮助 -V, --version 显示版本信息并退出 -q, --quiet, --silent 不打印checking ...'消息 --cache-file=FILE 缓存测试结果在 FILE [禁用] -C, --config-cache 别名 –cache-file=config.cache’ -n, --no-create 不创建输出文件 –srcdir=DIR 在 DIR [configure dir or `…’] 中查找源
安装目录: –prefix=PREFIX 在 PREFIX 中安装与体系结构无关的文件 [/usr/本地] –exec-prefix=EPREFIX 在 EPREFIX 中安装依赖于架构的文件 [字首]
默认情况下,make install' 将安装所有文件 /usr/local/bin’, /usr/local/lib' 等你可以指定 使用 –prefix’ 的除 /usr/local' 之外的安装前缀, 例如 –prefix=$HOME’。
为了更好地控制,请使用以下选项。
微调安装目录: –bindir=DIR 用户可执行文件 [EPREFIX/bin] –sbindir=DIR 系统管理员可执行文件 [EPREFIX/sbin] –libexecdir=DIR 程序可执行文件 [EPREFIX/libexec] –sysconfdir=DIR 只读单机数据 [PREFIX/etc] –sharedstatedir=DIR 可修改的架构独立数据 [PREFIX/com] –localstatedir=DIR 可修改的单机数据 [PREFIX/var] –runstatedir=DIR 可修改的每进程数据 [LOCALSTATEDIR/run] –libdir=DIR 目标代码库 [EPREFIX/lib] –includedir=DIR C 头文件 [PREFIX/include] –oldincludedir=DIR 非 gcc 的 C 头文件 [/usr/include] –datarootdir=DIR 只读 arch.-independent data root [PREFIX/share] –datadir=DIR 只读架构无关数据 [DATAROOTDIR] –infodir=DIR 信息文档 [DATAROOTDIR/info] –localedir=DIR 语言环境相关数据 [DATAROOTDIR/locale] –mandir=DIR man 文档 [DATAROOTDIR/man] –docdir=DIR 文档根目录 [DATAROOTDIR/doc/php] –htmldir=DIR html 文档 [DOCDIR] –dvidir=DIR dvi 文档 [DOCDIR] –pdfdir=DIR pdf 文档 [DOCDIR] –psdir=DIR ps 文档 [DOCDIR]
程序名称: –program-prefix=PREFIX 在已安装的程序名前添加 PREFIX –program-suffix=SUFFIX 将 SUFFIX 附加到已安装的程序名称 –program-transform-name=PROGRAM 在已安装的程序名称上运行 sed PROGRAM
系统类型: –build=BUILD 配置用于在 BUILD 上构建 [猜测] –host=HOST 交叉编译以构建在 HOST 上运行的程序 [BUILD] –target=TARGET 配置用于为 TARGET [HOST] 构建编译器
可选功能和包: –disable-option-checking 忽略无法识别的 --enable/–with 选项 –disable-FEATURE 不包括 FEATURE(与 --enable-FEATURE=no 相同) –enable-FEATURE[=ARG] 包括 FEATURE [ARG=yes] –with-PACKAGE[=ARG] 使用 PACKAGE [ARG=yes] –without-PACKAGE 不使用 PACKAGE(与 --with-PACKAGE=no 相同) –with-libdir=NAME 在 …/NAME 而不是 …/lib 中查找库 –disable-rpath 禁用传递额外的运行时库搜索 路径 –enable-re2c-cgoto 启用 -g 标志到 re2c 以使用计算的 goto gcc 扩大 –disable-gcc-global-regs 是否启用 GCC 全局寄存器变量
SAPI 模块:
–with-apxs2[=FILE] 构建共享的 Apache 2 处理程序模块。文件是 Apache apxs 工具 [apxs] 的可选路径名 –disable-cli 禁用构建 CLI 版本的 PHP(这会强制 –无梨) –enable-embed[=TYPE] 实验:启用嵌入式 SAPI 的构建 库 TYPE 是“共享”或“静态”。 [类型=共享] –enable-fpm 启用 fpm SAPI 可执行文件的构建 –with-fpm-user[=USER] 设置 php-fpm 运行的用户。 (默认: 没有人) –with-fpm-group[=GRP] 设置 php-fpm 运行的组。对于一个系统 用户,这通常应该设置为匹配 fpm 用户名(默认值:nobody) –with-fpm-systemd 激活 systemd 集成 –with-fpm-acl 使用 POSIX 访问控制列表 –with-fpm-apparmor 支持 AppArmor 限制 通过 libapparmor 修改 –enable-fuzzer 将 PHP 构建为 clang 模糊测试模块(用于 开发人员) –enable-fuzzer-msan 在模糊测试时启用 msan 而不是 asan/ubsan –enable-litespeed 将 PHP 构建为 litespeed 模块 –enable-phpdbg 构建 phpdbg –enable-phpdbg-webhelper 构建 phpdbg web SAPI 支持 –enable-phpdbg-debug 在调试模式下构建 phpdbg –enable-phpdbg-readline 在 phpdbg 中启用 readline 支持(取决于静态 分机/阅读线) –disable-cgi 禁止构建 CGI 版本的 PHP –with-valgrind 启用 valgrind 支持
常规设置:
–enable-gcov 启用 GCOV 代码覆盖 - 仅限开发人员!! –enable-debug 使用调试符号编译 –启用调试断言 即使在发布模式下也使用调试断言进行编译 –enable-zts 启用线程安全 –enable-rtld-now 使用带有 RTLD_NOW 而不是 RTLD_LAZY 的 dlopen –with-layout=TYPE 设置安装文件的布局方式。类型可以 是 PHP 或 GNU [PHP] –with-config-file-path=PATH 设置查找 php.ini 的路径 [前缀/库] –with-config-file-scan-dir=PATH 设置扫描配置文件的路径 –enable-sigchild 启用 PHP 自己的 SIGCHLD 处理程序 –enable-libgcc 启用针对 libgcc 的显式链接 –disable-short-tags 禁用短格式 <?默认开始标记 –enable-dmalloc 启用 dmalloc –disable-ipv6 禁用 IPv6 支持 –enable-dtrace 启用 DTrace 支持 –enable-fd-setsize 设置描述符集的大小 –enable-werror 启用-Werror –enable-memory-sanitizer 启用内存清理程序(仅限叮当声)
扩展:
–with-EXTENSION=shared[,PATH]
注意:并非所有扩展都可以构建为“共享”。
示例:--with-foobar=shared,/usr/local/foobar/
o 将 foobar 扩展构建为共享扩展。
o foobar 包安装前缀是 /usr/local/foobar/
–disable-all 禁用所有默认启用的扩展 –without-libxml 在没有 LIBXML 支持的情况下构建 –with-openssl 包括 OpenSSL 支持(需要 OpenSSL >= 1.0.1) –with-kerberos OPENSSL:包括 Kerberos 支持 –with-system-ciphers OPENSSL:使用系统默认密码列表而不是 硬编码值 –with-external-pcre 使用外部库来支持 PCRE –with-pcre-jit 启用 PCRE JIT 功能 –without-sqlite3 不包括 SQLite3 支持。 –with-zlib 包含 ZLIB 支持(需要 zlib >= 1.2.0.4) –enable-bcmath 启用 bc 风格的精确数学函数 –with-bz2[=DIR] 包括 BZip2 支持 –enable-calendar 启用对日历转换的支持 –disable-ctype 禁用 ctype 功能 –with-curl 包括 cURL 支持 –enable-dba 使用捆绑模块构建 DBA。构建共享 DBA 扩展使用 --enable-dba=shared –with-qdbm[=DIR] DBA:QDBM 支持 –with-gdbm[=DIR] DBA:GDBM 支持 –with-ndbm[=DIR] DBA:NDBM 支持 –with-db4[=DIR] DBA:Oracle Berkeley DB 4.x 或 5.x 支持 –with-db3[=DIR] DBA:Oracle Berkeley DB 3.x 支持 –with-db2[??=DIR] DBA:Oracle Berkeley DB 2.x 支持 –with-db1[=DIR] DBA:Oracle Berkeley DB 1.x 支持/模拟 –with-dbm[=DIR] DBA:DBM 支持 –with-tcadb[=DIR] DBA:东京内阁抽象数据库支持 –with-lmdb[=DIR] DBA:闪电内存映射数据库支持 –without-cdb[=DIR] DBA:CDB 支持(捆绑) –disable-inifile DBA:INI 支持(捆绑) –disable-flatfile DBA:FlatFile 支持(捆绑) –disable-dom 禁用 DOM 支持 –with-enchant 包括附魔支持 –enable-exif 启用 EXIF(来自图像的元数据)支持 –with-ffi 包括 FFI 支持 –disable-fileinfo 禁用文件信息支持 –disable-filter 禁用输入过滤器支持 –enable-ftp 启用 FTP 支持 –with-openssl-dir FTP: 是否开启 FTP SSL 支持 分机/openssl –enable-gd 包括 GD 支持 –with-external-gd 使用外部 libgd –with-webp GD:启用 WEBP 支持(仅适用于捆绑的 libgd) –with-jpeg GD:启用 JPEG 支持(仅适用于捆绑的 libgd) –with-xpm GD:启用 XPM 支持(仅适用于捆绑的 libgd) –with-freetype GD:启用 FreeType 2 支持(仅适用于捆绑 库) –enable-gd-jis-conv GD:启用 JIS 映射的日语 字体支持(仅 对于捆绑的 libgd) –with-gettext[=DIR] 包含 GNU gettext 支持 –with-gmp[=DIR] 包含 GNU MP 支持 –with-mhash 包括 mhash 支持 –without-iconv[=DIR] 排除 iconv 支持 –with-imap[=DIR] 包括 IMAP 支持。 DIR 是 c 客户端安装 字首 –with-kerberos IMAP:包括 Kerberos 支持 –with-imap-ssl IMAP:包括 SSL 支持 –enable-intl 启用国际化支持 –with-ldap[=DIR] 包括 LDAP 支持 –with-ldap-sasl LDAP:使用 Cyrus SASL 支持构建 –enable-mbstring 启用多字节字符串支持 –disable-mbregex MBSTRING:禁用多字节正则表达式支持 –with-mysqli[=FILE] 包括 MySQLi 支持。 FILE 是路径 mysql_config。如果没有值或 mysqlnd 作为传递 FILE,将使用 MySQL 本机驱动程序 –with-mysql-sock[=SOCKPATH] MySQLi/PDO_MYSQL:MySQL unix 套接字的位置 指针。如果未指定,则默认位置为 搜索过 –with-oci8[=DIR] 包括 Oracle 数据库 OCI8 支持。目录默认值 到 $ORACLE_HOME。用 –with-oci8=instantclient,/path/to/instant/client/lib 使用 Oracle Instant Client 安装 –with-odbcver[=HEX] 强制支持传递的 ODBC 版本。一个十六进制 数字是预期的,默认为 0x0350。使用特殊 值 0 以防止显式 ODBCVER 定义。 –with-adabas[=DIR] 包含 Adabas D 支持 [/usr/local] –with-sapdb[=DIR] 包括 SAP DB 支持 [/usr/local] –with-solid[=DIR] 包括 Solid 支持 [/usr/local/solid] –with-ibm-db2[??=DIR] 包括 IBM DB2 支持 [/home/db2inst1/sqllib] –with-empress[=DIR] 包含 Empress 支持 $EMPRESSPATH (Empress 需要版本 >= 8.60) –with-empress-bcs[=DIR] 包括 Empress 本地访问支持 $EMPRESSPATH (需要皇后版 >= 8.60) –with-custom-odbc[=DIR] 包括用户定义的 ODBC 支持。 DIR 是 ODBC 安装基本目录 [/usr/local]。确保 定义 CUSTOM_ODBC_LIBS 并在你的 包括目录。例如,您应该定义 以下是 QNX 上的 Sybase SQL Anywhere 5.5.00, 在运行此配置脚本之前: CPPFLAGS="-DODBC_QNX -DSQLANY_BUG" LDFLAGS=-lunix CUSTOM_ODBC_LIBS="-ldblib -lodbc" –with-iodbc 包括 iODBC 支持 –with-esoob[=DIR] 包括 Easysoft OOB 支持 [/usr/local/easysoft/oob/client] –with-unixODBC 包括 unixODBC 支持 –with-dbmaker[=DIR] 包括 DBMaker 支持 –disable-opcache 禁用 Zend OPcache 支持 –disable-huge-code-pages 禁止将 PHP 代码页复制到 HUGE PAGES –disable-opcache-jit 禁用 JIT –enable-pcntl 启用 pcntl 支持(仅限 CLI/CGI) –disable-pdo 禁用 PHP 数据对象支持 –with-pdo-dblib[=DIR] PDO:DBLIB-DB 支持。 DIR 是 FreeTDS 的家 目录 –with-pdo-firebird[=DIR] PDO:火鸟支持。 DIR 是 Firebird 基地 安装目录 [/opt/firebird] –with-pdo-mysql[=DIR] PDO:MySQL 支持。 DIR 是 MySQL 的基本目录。 如果没有值或 mysqlnd 作为 DIR 传递,则 MySQL 将使用本机驱动程序 –with-zlib-dir[=DIR] PDO_MySQL:设置 libz 安装前缀的路径 –with-pdo-oci[=DIR] PDO:Oracle OCI 支持。 DIR 默认为 $ORACLE_HOME。用 –with-pdo-oci=instantclient,/path/to/instant/client/lib 用于 Oracle Instant Client 安装。 –with-pdo-odbc=flavor,dir PDO:支持“风味”ODBC 驱动程序。包括 并在’dir’下查找lib目录。这 “风味”可以是以下之一:ibm-db2、iODBC、unixODBC、 通用的。如果省略 ‘,dir’ 部分,则默认为 将使用您选择的风味。例如。: –with-pdo-odbc=unixODBC 将检查 unixODBC 在 /usr/local 下。您可以尝试使用 否则不支持的驱动程序使用“通用” 味道。通用 ODBC 支持的语法 是: –with-pdo-odbc=generic,dir,libname,ldflags,cflags。 当构建为“共享”时,扩展文件名是 总是 pdo_odbc.so –with-pdo-pgsql[=DIR] PDO:PostgreSQL 支持。 DIR 是 PostgreSQL 的基础 安装目录或 pg_config 的路径 –without-pdo-sqlite PDO:sqlite 3 支持。 –with-pgsql[=DIR] 包括 PostgreSQL 支持。 DIR 是 PostgreSQL 基本安装目录或 pg_config 的路径 –disable-phar 禁用 phar 支持 –disable-posix 禁用类似 POSIX 的功能 –with-pspell[=DIR] 包括 PSPELL 支持。 GNU Aspell 版本 0.50.0 或 要求更高 –with-libedit 包括 libedit readline 替换(仅限 CLI/CGI) –with-readline[=DIR] 包括 readline 支持(仅限 CLI/CGI) –disable-session 禁用会话支持 –with-mm[=DIR] SESSION:包括对会话存储的 mm 支持 –enable-shmop 启用 shmop 支持 –disable-simplexml 禁用 SimpleXML 支持 –with-snmp[=DIR] 包括 SNMP 支持 –enable-soap 启用 SOAP 支持 –enable-sockets 启用套接字支持 –with-sodium 包括钠支持 –with-password-argon2[=DIR] 在 password_* 中包含 Argon2 支持。 DIR 是 Argon2 共享库路径 –enable-sysvmsg 启用 sysvmsg 支持 –enable-sysvsem 启用 System V 信号量支持 –enable-sysvshm 启用 System V 共享内存支持 –with-tidy[=DIR] 包含 TIDY 支持 –disable-tokenizer 禁用标记器支持 –disable-xml 禁用 XML 支持 –with-expat XML:使用 expat 而不是 libxml2 –disable-xmlreader 禁用 XMLReader 支持 –disable-xmlwriter 禁用 XMLWriter 支持 –with-xsl 使用 XSL 支持构建 –enable-zend-test 启用 zend-test 扩展 –with-zip 包括 Zip 读/写支持 –enable-mysqlnd 显式启用 mysqlnd,将隐式完成 当其他扩展需要时 –disable-mysqlnd-compression-support 禁用对 MySQL 压缩协议的支持 mysqlnd
梨:
–with-pear[=DIR] 在 DIR [PREFIX/lib/php] 中安装 PEAR
禅:
–disable-zend-signals 是否开启zend信号处理
TSRM:
库工具:
–enable-shared=PKGS 构建共享库默认=yes –enable-static=PKGS 构建静态库 default=yes –enable-fast-install=PKGS 优化快速安装 default=yes –with-gnu-ld 假设 C 编译器使用 GNU ld default=no –disable-libtool-lock 避免锁定(可能会破坏并行构建) –with-pic 尝试只使用 PIC/非 PIC 对象 default=use both –with-tags=TAGS 自动包含附加配置
一些有影响的环境变量: pkg-config 实用程序的 PKG_CONFIG 路径 PKG_CONFIG_PATH 添加到 pkg-config 搜索路径的目录 PKG_CONFIG_LIBDIR 路径覆盖 pkg-config 的内置搜索路径 CC C 编译器命令 CFLAGS C 编译器标志 LDFLAGS 链接器标志,例如-L 如果你有库 非标准目录 <lib 目录> 传递给链接器的 LIBS 库,例如-l<库> CPPFLAGS(目标)C/C++ 预处理器标志,例如-I<包含目录> 如果 您在非标准目录中有标题 CPP C 预处理器 SYSTEMD_CFLAGS SYSTEMD 的 C 编译器标志,覆盖 pkg-config SYSTEMD_LIBS SYSTEMD 的链接器标志,覆盖 pkg-config CXX C++ 编译器命令 CXXFLAGS C++ 编译器标志 CXXCPP C++ 预处理器 VALGRIND_CFLAGS VALGRIND 的 C 编译器标志,覆盖 pkg-config VALGRIND_LIBS VALGRIND 的链接器标志,覆盖 pkg-config LIBXML_CFLAGS LIBXML 的 C 编译器标志,覆盖 pkg-config LIBXML 的 LIBXML_LIBS 链接器标志,覆盖 pkg-config KERBEROS_CFLAGS KERBEROS 的 C 编译器标志,覆盖 pkg-config KERBEROS_LIBS KERBEROS 的链接器标志,覆盖 pkg-config OPENSSL_CFLAGS OPENSSL 的 C 编译器标志,覆盖 pkg-config OPENSSL_LIBS OPENSSL 的链接器标志,覆盖 pkg-config PCRE2_CFLAGS PCRE2 的 C 编译器标志,覆盖 pkg-config PCRE2 的 PCRE2_LIBS 链接器标志,覆盖 pkg-config SQLITE_CFLAGS SQLITE 的 C 编译器标志,覆盖 pkg-config SQLITE 的 SQLITE_LIBS 链接器标志,覆盖 pkg-config ZLIB_CFLAGS ZLIB 的 C 编译器标志,覆盖 pkg-config ZLIB 的 ZLIB_LIBS 链接器标志,覆盖 pkg-config CURL_CFLAGS CURL 的 C 编译器标志,覆盖 pkg-config CURL 的 CURL_LIBS 链接器标志,覆盖 pkg-config CURL_FEATURES libcurl 的 supported_features 值,覆盖 pkg-config ENCHANT2_CFLAGS ENCHANT2 的 C 编译器标志,覆盖 pkg-config ENCHANT2_LIBS ENCHANT2 的链接器标志,覆盖 pkg-config ENCHANT_CFLAGS ENCHANT 的 C 编译器标志,覆盖 pkg-config ENCHANT_LIBS ENCHANT 的链接器标志,覆盖 pkg-config FFI_CFLAGS FFI 的 C 编译器标志,覆盖 pkg-config FFI 的 FFI_LIBS 链接器标志,覆盖 pkg-config PNG_CFLAGS PNG 的 C 编译器标志,覆盖 pkg-config PNG_LIBS 的 PNG 链接器标志,覆盖 pkg-config WEBP_CFLAGS WEBP 的 C 编译器标志,覆盖 pkg-config WEBP 的 WEBP_LIBS 链接器标志,覆盖 pkg-config JPEG_CFLAGS JPEG 的 C 编译器标志,覆盖 pkg-config JPEG 的 JPEG_LIBS 链接器标志,覆盖 pkg-config XPM_CFLAGS XPM 的 C 编译器标志,覆盖 pkg-config XPM 的 XPM_LIBS 链接器标志,覆盖 pkg-config FREETYPE2_CFLAGS FREETYPE2 的 C 编译器标志,覆盖 pkg-config FREETYPE2_LIBS FREETYPE2 的链接器标志,覆盖 pkg-config GDLIB_CFLAGS GDLIB 的 C 编译器标志,覆盖 pkg-config GDLIB 的 GDLIB_LIBS 链接器标志,覆盖 pkg-config ICU_CFLAGS ICU 的 C 编译器标志,覆盖 pkg-config ICU_LIBS ICU 链接器标志,覆盖 pkg-config SASL_CFLAGS SASL 的 C 编译器标志,覆盖 pkg-config SASL_LIBS 的 SASL 链接器标志,覆盖 pkg-config ONIG_CFLAGS ONIG 的 C 编译器标志,覆盖 pkg-config ONIG 的 ONIG_LIBS 链接器标志,覆盖 pkg-config ODBC_CFLAGS ODBC 的 C 编译器标志,覆盖 pkg-config ODBC 的 ODBC_LIBS 链接器标志,覆盖 pkg-config EDIT_CFLAGS 编辑的 C 编译器标志,覆盖 pkg-config 编辑的 EDIT_LIBS 链接器标志,覆盖 pkg-config LIBSODIUM_CFLAGS LIBSODIUM 的 C 编译器标志,覆盖 pkg-config LIBSODIUM_LIBS LIBSODIUM 的链接器标志,覆盖 pkg-config EXPAT_CFLAGS EXPAT 的 C 编译器标志,覆盖 pkg-config EXPAT 的 EXPAT_LIBS 链接器标志,覆盖 pkg-config XSL_CFLAGS 用于 XSL 的 C 编译器标志,覆盖 pkg-config XSL 的 XSL_LIBS 链接器标志,覆盖 pkg-config EXSLT_CFLAGS EXSLT 的 C 编译器标志,覆盖 pkg-config EXSLT 的 EXSLT_LIBS 链接器标志,覆盖 pkg-config LIBZIP_CFLAGS LIBZIP 的 C 编译器标志,覆盖 pkg-config LIBZIP 的 LIBZIP_LIBS 链接器标志,覆盖 pkg-config
使用这些变量来覆盖“configure”所做的选择或帮助 它用于查找具有非标准名称/位置的库和程序。
向 https://bugs.php.net 报告错误。 PHP 主页:https://www.php.net。
|