2011-06-24 20 views
6

私はいくつかのPHP拡張モジュールを作成しようとしました。デバッグでPHP 5.3.6のPHP拡張モジュールをコンパイルする方法、

php 5.3.6を最初にコンパイルしました。--enable-debug --enable-maintainer-ztsです。 は、それから私は

phpize 
./configure --with-EXTNAME 
make 

はその後、私のPHP拡張ディレクトリにextname.soをコピーし、php.ini

を変更することは私の延長と利用スタンダール手順をceatedそして、私は、CLIからPHPを使用しようとすると、私はエラーを得た

私がしよう
Unable to initialize module 
Module compiled with build ID=API20090626,NTS 
PHP compiled with build ID=API20090626,TS,debug 

./configure --enable-debug --enable-maintainer-zts 

拡張のために、これらのオプションがconfigureスクリプトによって認識されないことを警告しました。

私の拡張機能をコンパイルして、上記のphp自体を再コンパイルしないでコンパイルしたPHPで使用するにはどうすればよいですか?

答えて

6

./configure --with-php-config=/path/to/correct/php-configが必要です。

configureスクリプトはおそらく別のphp-config(おそらく中央インストールされているもの)を使用しています。私のサーバーで

+0

を行うスレッドセーフではなく "は、phpize" を使用してコンパイルを確認するために、どこで右php-を見つけることができます2は、phpizeがあります設定? 私はそれがbinディレクトリのPHPの近くにあると思います、そうですか? – krasilich

+0

@kra yes、correct – Artefacto

+0

すべてがうまくいくように思えます、ありがとう! – krasilich

0

/usr/bin/php/phpize 
    /usr/bin/php-zts/phpize 

それは...ああ を

/usr/bin/php-zts/phpize 
./configure --with-php-config=/usr/bin/php-zts/php-config 
make 
make install 
+0

注意:正しいphpizeを選択するだけでは不十分です:--with-php-configも必要です。 – Dereckson

関連する問題