PHP 8.4.0 RC4 available for testing

中心となる configure オプションのリスト

以下のリストは、Unix 系の環境で PHP をコンパイルする際に用いられる configure スクリプトのオプションの一部です。 ほとんどのオプションはそれぞれの拡張モジュールのリファレンスページで 説明されており、ここにはありません。最新の configure オプションの 完全なリストを得るには、PHP のソースディレクトリで autoconf を実行した後、./configure --help を実行してください(インストールと設定 も参照ください)。--prefix=PREFIX のような追加の configure オプションについて興味がある方は、 » GNU configure のドキュメントが 参考になるでしょう。

注意:

これらの設定はコンパイル時にのみ使用可能です。PHP の動作を 実行時に設定したい場合は、実行時設定 の章を参照ください。

PHP の Configure オプション

一般的なオプション

--enable-debug

デバッグシンボルつきでコンパイルします。

--with-layout=TYPE

インストールされるファイルのレイアウトを設定します。Type には PHP(デフォルト)または GNU のどちらかが指定できます。 manページを PREFIX 直下にインストールした場合(デフォルト)、 manpath ユーティリティの検索パスで見つかった順に、 GNU スタイルのレイアウトが選択されるので注意しましょう。

--with-pear=DIR

PEAR を DIR(デフォルトは PREFIX/lib/php)にインストールします。

--without-pear

PEAR をインストールしません。

--enable-sigchild

PHP 独自の SIGCHLD ハンドラを有効にします。

--disable-rpath

実行時にライブラリの検索パスを追加できないようにします。

--enable-libgcc

明示的に libgcc とリンクします。

--enable-php-streams

実験的な PHP ストリーム機能を組み込みます。PHP そのものをテストする 目的以外では使用しないでください。

--with-zlib-dir[=DIR]

zlib のインストールディレクトリを指定します。

--with-tsrm-pthreads

POSIX スレッドを使用します(デフォルト)。

--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]。

--enable-versioning

要求されるシンボルのみをエクスポートします。 詳細な情報は INSTALL を参照ください。

PHP オプション

--enable-maintainer-mode

一般の利用者にとってあまり便利でない(そして時に混乱のもととなる) make ルールや依存性を有効にします。

--with-config-file-path=PATH

php.ini を探すパスを設定します。デフォルト値は PREFIX/lib です。

--disable-short-tags

開始タグの短縮形 <? をデフォルトで無効にします。

--with-libdir

Unix システムにおいて、PHP をビルドするためのライブラリがあるディレクトリを指定します。 64 ビットシステムでは、この引数を --with-libdir=lib64 のようにして lib64 ディレクトリを指定しなければなりません。

--enable-zts

Zend Thread Safety を有効にします。 PHP 8.0.0 より前のバージョン、かつ Windows 以外のシステムでは、 このオプションは --enable-maintainer-zts と呼ばれていました。

SAPI オプション

以下のリストには、PHP で有効な SAPI(Server Application Programming Interface)が含まれています。

--with-apxs[=FILE]

Apache 共有モジュールをビルドします。FILE は Apache apxs ツールへの パスで、デフォルトは apxs です。Apache のソース Tarball に含まれる apxs を指定するのではなく、そのシステムに実際にインストールされている バージョンの apxs を指定するようにしましょう。

--with-apache[=DIR]

静的 Apache モジュールをビルドします。DIR は Apache のビルドディレクトリで、 デフォルトは /usr/local/apache です。

--with-mod_charset

(ロシアの Apache 用の)mod_charset のための変換テーブルを 有効にします。

--with-apxs2[=FILE]

Apache 2.0 共有モジュールをビルドします。FILE は、オプションで指定する Apache apxs ツールへのパスです。デフォルトは apxs です。

--disable-cli

PHP の CLI バージョンのビルドを 無効にします(自動的に --without-pear も指定されます)。詳細な情報は PHP をコマンドラインから使用する を参照ください。

--enable-phpdbg

phpdbg インタラクティブデバッガ SAPI モジュールのサポートを有効にします。

--enable-embed[=TYPE]

組み込み SAPI ライブラリのビルドを有効にします。TYPE は shared あるいは static のいずれかで、デフォルトは shared です。

--with-servlet[=DIR]

サーブレットのサポートを含めます。DIR は JSDK のインストールディレクトリです。 java 拡張モジュールが共有ライブラリとしてビルドされていることが 前提条件です。

--disable-cgi

PHP の CGI バージョンをビルドしないようにします。

この引数は FastCGI も有効にします。

add a note

User Contributed Notes 2 notes

up
6
atesin () gmail ! com
3 years ago
i'll answer myself (FINALLY!)

current "configure options" can be viewed with "php-config" shell script, aside with other compile time options too =D!!! ...

in some distributions it comes with the "php-devel" package... but until in this online manual "php-config" is mentioned in pecl extensions documentation (i couldn't find on pecl site), idk if that "php-devel" has something to do with this

... however i noticed they are literal strings inside the script, i hope the script itself were built together with php compilation o_O

in the previous page "configure options" (link shown above ^), there is an editor note with additional info about it
up
4
atesin () gmail ! com
3 years ago
please somebody tell me how to display configure options used in php actual binary

it was shown in phpinfo() some years before, it was very useful, specially with 'phpize' recompilation and to enable some pecl/pear module :/

please tell me also which ctriteria had php guys used to suddenly decided to hide (or obfuscate) this info :/

thanks in advance
To Top