PHP Linux Configure参数详解

48 篇文章 1 订阅

hp多用linux系统下运行,本篇介绍Configure的参数详解。

“configure”配置这个包以适应多种系统。

用法: ./configure [OPTION]… [VAR=VALUE]…

要分配环境变量(例如,CC, CFLAGS…),请将它们指定为VAR = VALUE。

以下是一些有用变量的描述。

选项的默认值在括号中指定。

配置:
-h, --help 显示这个帮助并退出
–help=short 显示特定包的选项
–help=recursive 显示包含的所有包的简短帮助
-V, --version 显示版本信息并退出
-q, --quiet, --silent 检测环境
–cache-file=FILE cache test results in FILE [disabled]
-C, --config-cache 简写的 `–cache-file=config.cache’ 操作
-n, --no-create 不创建输出文件
–srcdir=DIR 显示PHP目录

安装目录:
–prefix=PREFIX 指定安装目录
[/usr/local]
–exec-prefix=EPREFIX 依赖包安装目录
[PREFIX]

默认情况下,“make install”将安装所有文件/usr/local/bin',/usr/local/lib’等等。
可以指定安装目录/usr/local' 使用–prefix’,例如 `–prefix=$HOME’。

为了更好地控制,请使用下面的选项。

调试安装目录:
–bindir=DIR 用户可执行文件 [EPREFIX/bin]
–sbindir=DIR 系统管理员可执行文件 [EPREFIX/sbin]
–libexecdir=DIR 程序的可执行文件 [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]
–runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
–libdir=DIR 类库路径 [EPREFIX/lib]
–includedir=DIR C语言头文件 [PREFIX/include]
–oldincludedir=DIR 为non-gcc提供的C语言头文件 [/usr/include]
–datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
–datadir=DIR read-only architecture-independent data [DATAROOTDIR]
–infodir=DIR info 文档 [DATAROOTDIR/info]
–localedir=DIR locale-dependent data [DATAROOTDIR/locale]
–mandir=DIR man 文档 [DATAROOTDIR/man]
–docdir=DIR 文档 root [DATAROOTDIR/doc/PACKAGE]
–htmldir=DIR html 文档 [DOCDIR]
–dvidir=DIR dvi 文档 [DOCDIR]
–pdfdir=DIR pdf 文档 [DOCDIR]
–psdir=DIR ps 文档 [DOCDIR]

系统类型:
–build=BUILD 建立基本配置 [guessed]
–host=HOST cross-compile 建立运行在主机上的程序。 [BUILD]
–target=TARGET 目标建立编译器配置 [HOST]

可选包:
–disable-option-checking 忽略 --enable/–with 选项
–disable-FEATURE 不包括 FEATURE 包 (same as --enable-FEATURE=no)
–enable-FEATURE[=ARG] 包括 FEATURE 包 [ARG=yes]
–with-PACKAGE[=ARG] 使用 PACKAGE 包 [ARG=yes]
–without-PACKAGE 不使用 PACKAGE 包 (same as --with-PACKAGE=no)
–with-libdir=NAME Look for libraries in …/NAME rather than …/lib
–disable-rpath 关闭额外的运行库文件
–enable-re2c-cgoto 允许-g标志re2c使用计算goto gcc扩展
–disable-gcc-global-regs 是否启用GCC全局变量

SAPI模块:

–with-apxs2=FILE 建造公共的Apache 2.0处理程序模块。文件是可选的
Apache apxs工具apxs的路径名
–disable-cli 禁止创建CLI的PHP版本
(参数需要 --without-pear)
–enable-embed=TYPE 实验性: 建立内嵌的SAPI库。参数为shared、static。 [TYPE=shared]
–enable-fpm 打上php-fpm补丁后才有这个参数,cgi方式安装的启动程序。
–with-fpm-user=USER 设置php-fpm的运行用户为USER。 (默认: nobody)
–with-fpm-group=GRP 设置php-fpm的运行组,一般与with-fpm-user参数相同 (默认: nobody)
–with-fpm-systemd 激活系统集成功能,开启后php-fpm可以上报给系统一些信息
–with-fpm-acl 使用POSIX 访问控制列表,5.6.5版本起有效
–with-litespeed 编译PHP为litespeed模块
–enable-phpdbg 开启phpdbg调试器
–enable-phpdbg-webhelper 开启phpdbg web SAPI支持
–enable-phpdbg-debug 在调试模式下开启phpdbg
–disable-cgi 禁用创建CGI的PHP版本

普通参数设置:

–enable-gcov 请用GCOV代码覆盖率(仅用于开发人员使用)
–enable-debug 编译时加入调试符号
–with-layout=TYPE 设置安装后的文件布局。TYPE 可以是 PHP 或者 GNU。 [TYPE=PHP]
–with-config-file-path=PATH
设置 php.ini 路径[PREFIX/lib]
–with-config-file-scan-dir=PATH
扫描配置文件的路径
–enable-sigchild 使用PHP自带的SIGCHLD处理器
–enable-libgcc 启用libgcc的精确链接
–disable-short-tags 默认禁用短形式的<?作为php代码的开始标记
–enable-dmalloc 启用dmalloc(dmalloc是Linux C编程侦测记忆体溢出工具)
–disable-ipv6 关闭ipv6支持
–enable-dtrace 开启DTrace(动态跟踪)支持
–enable-fd-setsize 设置描述集的大小

扩展:

–with-EXTENSION=shared[,PATH] 编译成共享方式

并非所有扩展都能编译成共享方式

例子: --with-foobar=shared,/usr/local/foobar/

o 将foobar扩展编译为共享扩展。
o 指定foobar包安装路径是/usr/local/foobar/

–disable-all 关闭默认启用的所有扩展功能

–disable-libxml 禁用LIBXML支持
–with-libxml-dir=DIR LIBXML安装目录
–with-openssl=DIR 包括openssl支持 (OpenSSL版本号必须大于等于 0.9.8)
–with-kerberos=DIR OPENSSL: 包括Kerberos支持
–with-system-ciphers OPENSSL: 用系统自带的密码清单(cipher list)去替代硬编码(hard coded)
–with-pcre-regex=DIR 将正则表达式pcre替换为regex。DIR为regex路径
–with-pcre-jit 构建PCRE与JIT编译的支持。
–without-sqlite3=DIR 禁用SQLite3扩展。DIR是SQLite3安装目录的前缀。
–with-zlib=DIR 开启ZLIB支持 (ZLIB版本号必须大于等于 1.0.9)
–with-zlib-dir=

ZLIB的安装路径
–enable-bcmath 启用bcmatch(精度数学)
–with-bz2=DIR 开启BZip2支持
–enable-calendar 启用日历转换支持
–disable-ctype 禁用ctype功能
–with-curl=DIR 启用cURL支持
–enable-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 or 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: Tokyo Cabinet abstract DB support
–without-cdb=DIR DBA: CDB 支持 (捆绑)
–disable-inifile DBA: INI 支持 (捆绑)
–disable-flatfile DBA: FlatFile 支持 (捆绑)
–disable-dom 禁止 DOM 支持
–with-libxml-dir=DIR DOM: libxml2安装目录前缀
–with-enchant=DIR 启用 enchant 支持.GNU Aspell 版本号必须高于 1.1.3
–enable-exif 启用EXIF支持(从图片中获取元数据)
–disable-fileinfo 禁用fileinfo支持
–disable-filter 关闭 input filter 支持
–with-pcre-dir FILTER: pcre安装前缀
–enable-ftp 开启ftp支持
–with-openssl-dir=DIR FTP: openssl安装前缀
–with-gd=DIR 开启GD图像处理库的支持。 DIR是GD库安装目录
–with-webp-dir=DIR GD: 设置libwebp安装前缀的路径
–with-jpeg-dir=DIR GD: 设置libjpeg安装前缀的路径
–with-png-dir=DIR GD: 设置libpng安装前缀的路径
–with-zlib-dir=DIR GD: 设置libz安装前缀的路径
–with-xpm-dir=DIR GD: 设置到libXpm安装前缀的路径
–with-freetype-dir=DIR GD: 设置到FreeType 2安装前缀的路径
–enable-gd-native-ttf GD: 开启TrueType字符串函数
–enable-gd-jis-conv GD: 开启JIS-mapped日语字体支持
–with-gettext=DIR 包括GNU gettext支持
–with-gmp=DIR 包括GNU MP支持
–with-mhash=DIR 包括mhash支持
–disable-hash 禁用hash支持
–without-iconv=DIR 禁用iconv支持
–with-imap=DIR 包含IMAP支持。指定c-client安装目录
–with-kerberos=DIR IMAP: 包括Kerberos支持。DIR是Kerberos安装前缀
–with-imap-ssl=DIR IMAP: 包括SSL支持。DIR是OpenSSL安装前缀
–with-interbase=DIR 启用interbase支持。 DIR是interbase安装前缀 /opt/firebird
–enable-intl 开启国际化支持(internationalization)
–with-icu-dir=DIR 开启ICU库并指定目录
–disable-json 禁用JavaScript json对象支持
–with-ldap=DIR 包括LDAP支持
–with-ldap-sasl=DIR LDAP: 包含 Cyrus SASL 支持
–enable-mbstring Enable 启用多字节字符串的支持
–disable-mbregex MBSTRING:禁用多字节的正则表达式支持
–disable-mbregex-backtrack
MBSTRING: 禁用多字节正则表达式回溯检查
–with-libmbfl=DIR MBSTRING: 使用外部的libmbfl并制定其目录
–with-onig=DIR MBSTRING: 使用外部的onig并制定其目录,如果没有设置DIR,将使用绑定的oniguruma
–with-mcrypt=DIR 包含 mcrypt 支持
–with-mysqli=FILE 包含 MySQLi 支持. FILE 为mysql_config安装路径。
如果没有传递值或mysqlnd作为启动,将使用MySQL本地驱动程序
–enable-embedded-mysqli
MYSQLi: 启用embedded支持。注意:不支持MySQL本地驱动!
–with-mysql-sock=SOCKPATH
MySQLi/PDO_MYSQL选项使用: mysql.sock文件路径
如果未指定,则搜索默认位置
–with-oci8=DIR 包括Oracle数据库OCI8支持。DIR默认为$ORACLE_HOME
如果使用Oracle客户端安装则使用–with-oci8=instantclient,/path/to/oic/lib
–with-odbcver=HEX Force support for the passed ODBC version. A hex number is expected, default 0x0300.
Use the special value of 0 to prevent an explicit ODBCVER to be defined.
–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-ODBCRouter=DIR 包含 ODBCRouter.com 支持 /usr
–with-empress=DIR 包含 Empress 支持 $EMPRESSPATH (Empress 版本 >= 8.60)
–with-empress-bcs=DIR
包含Empress本地访问支持 $EMPRESSPATH (Empress 版本 >= 8.60)
–with-birdstep=DIR 包括 Birdstep 的支持。DIR 是 Birdstep 的基本安装目录,默认为 /usr/local/birdstep。

–with-custom-odbc=DIR 包括用户自定义 ODBC 的支持。DIR 是 ODBC 的基本安装目录,
默认为 /usr/local。要确认定义了 CUSTOM_ODBC_LIBS 并且在 include 目录中有某个 odbc.h。
例如:对于 QNX 下的 Sybase SQL Anywhere 5.5.00,在运行 configure 脚本之前应该先定义以下环境变量:
CPPFLAGS=”-DODBC_QNX -DSQLANY_BUG” LDFLAGS=-lunix CUSTOM_ODBC_LIBS=”-ldblib -lodbc”。

–with-iodbc=DIR 包含 iODBC 支持 /usr/local
–with-esoob=DIR 包含 Easysoft OOB 支持 /usr/local/easysoft/oob/client
–with-unixODBC=DIR 包含 unixODBC 支持 /usr/local
–with-dbmaker=DIR 包含 DBMaker 支持
–disable-opcache 禁用 Zend OPcache 支持
–disable-opcache-file 禁用基于文件的缓存
–disable-huge-code-pages
禁用复制 PHP CODE 页面到 HUGE PAGES
–enable-pcntl 启用pcntl支持 (CLI/CGI only)
–disable-pdo 禁止 PHP 对数据抽象层(PDO)支持
–with-pdo-dblib=DIR PDO: DBLIB-DB支持。DIR是FreeTDS的主目录
–with-pdo-firebird=DIR PDO: Firebird 支持. DIR是Firebird的主目录。默认 /opt/firebird
–with-pdo-mysql=DIR PDO: 包含 MySQLi 支持. FILE 为mysql_config安装路径。
如果没有传递值或mysqlnd作为启动,将使用MySQL本地驱动程序
–with-zlib-dir=DIR PDO_MySQL: 设置libz安装前缀的路径
–with-pdo-oci=DIR PDO: Oracle OCI支持。为Oracle安装客户端SDK使用?with-pdo-oci=instantclient,prefix,version参数

–with-pdo-odbc=flavour,dir
PDO: 启用“flavour”ODBC支持。
在dir目录的include和lib目录下查找。“flavour”参数值可以是ibm-db2, unixODBC, generic。
如果dir省略,则使用默认值。如果你试图通过generic使用一个如若不支持的驱动程序。
为generic 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=DIR
PDO: sqlite 3的支持。DIR是sqlite安装目录打包
–with-pgsql=DIR 包括PostgreSQL的支持。DIR是PostgreSQL安装目录或pg_config路径
–disable-phar 禁用 phar 支持
–disable-posix 禁用 POSIX-like 支持
–with-pspell=DIR 包括 PSPELL 支持 GNU Aspell版本0.50.0或更高版本
–with-libedit=DIR 包含 libedit readline 更换(仅用于CLI和CGI)
–with-readline=DIR 包含 readline 支持 (仅用于CLI和CGI)
–with-recode=DIR 包含 recode 支持
–disable-session 禁用 session 支持
–with-mm=DIR SESSION: 为session存储启用mm支持
–enable-shmop 启用 shmop 支持
–disable-simplexml 禁用 SimpleXML 支持
–with-libxml-dir=DIR SimpleXML: libxml2 安装目录
–with-snmp=DIR 启用 SNMP 支持
–with-openssl-dir=DIR SNMP: openssl 安装目录
–enable-soap 启用 SOAP 支持
–with-libxml-dir=DIR SOAP: libxml2 安装目录
–enable-sockets 启用 sockets 支持
–enable-sysvmsg 启用 sysvmsg 支持
–enable-sysvsem 启用系统 V 信号支持
–enable-sysvshm 启用系统 V 共享内存支持
–with-tidy=DIR 包含 TIDY 支持
–disable-tokenizer 禁用 tokenizer 支持
–enable-wddx 启用 WDDX 支持
–with-libxml-dir=DIR WDDX: libxml2 安装目录
–with-libexpat-dir=DIR WDDX: 为XMLRPC-EPI启用libexpat(不推荐)
–disable-xml 禁用 XML 支持
–with-libxml-dir=DIR XML: libxml2 安装目录
–with-libexpat-dir=DIR XML: libexpat 安装目录 (不推荐)
–disable-xmlreader 禁用 XMLReader 支持
–with-libxml-dir=DIR XMLReader: libxml2 安装目录
–with-xmlrpc=DIR 包含 XMLRPC-EPI 支持
–with-libxml-dir=DIR XMLRPC-EPI: libxml2 安装目录
–with-libexpat-dir=DIR XMLRPC-EPI: 为XMLRPC-EPI启用libexpat(不推荐)
–with-iconv-dir=DIR XMLRPC-EPI: iconv支持
–disable-xmlwriter 禁用 XMLWriter 支持
–with-libxml-dir=DIR XMLWriter: libxml2 安装目录
–with-xsl=DIR 包含 XSL 支持. DIR是libxslt的安装目录(libxslt 版本 >= 1.1.0)
–enable-zip 包含 Zip read/write 支持
–with-zlib-dir=DIR ZIP: 设置libz安装路径
–with-pcre-dir ZIP: pcre安装路径
–with-libzip=DIR ZIP: 使用libzip
–enable-mysqlnd 开启 mysqlnd 支持
–disable-mysqlnd-compression-support
禁用对mysqlnd中的MySQL压缩协议的支持
–with-zlib-dir=DIR mysqlnd: 设置libz安装目录

PEAR:

–with-pear=DIR 安装 pear 。 DIR为安装目录[PREFIX/lib/php]
–without-pear 禁用 pear

Zend:

–enable-maintainer-zts 启用线程安全模式(仅用于代码维护人员使用)
–disable-inline-optimization
如果编译zend_execute.lo失败,则使用此参数
–enable-zend-signals 使用zend信号处理

TSRM:

–with-tsrm-pth=pth-config
使用GNU方式管理线程
–with-tsrm-st 使用SGI静态线程方式管理线程
–with-tsrm-pthreads 使用POSIX线程方式管理线程 (默认)

Libtool:

–enable-shared=PKGS 编译共享模块 default=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或non-PIC对象 default=use both
–with-tags=TAGS 包括额外的配置

重要的环境变量:
CC C编译器的命令
CFLAGS C编译器标志
LDFLAGS linker flags, e.g. -L if you have libraries in a
nonstandard directory
LIBS libraries to pass to the linker, e.g. -l
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if
you have headers in a nonstandard directory
CPP C 预处理程序
YACC The Yet Another Compiler Compiler' implementation to use. Defaults to the first program found out of:bison -y’, byacc',yacc’.
YFLAGS The list of arguments that will be passed by default to $YACC.
This script will default YFLAGS to the empty string to avoid a
default value of `-d’ given by some make applications.
CXX C++ 编译器的命令
CXXFLAGS C++ 编译器标志
CXXCPP C++ 预处理程序

使用这些变量覆盖’ configure’或help所做的选择
查找具有非标准名称/位置的库和程序。
向包提供者报告错误。
转载自:https://www.cnblogs.com/q3619940/p/10671907.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值