附录
在线手册:中文 英文
PHP手册

配置选项

Table of Contents


附录
在线手册:中文 英文
PHP手册
PHP手册 - N: 配置选项

用户评论:

Jay (10-Jan-2009 12:23)

As Thani said, it will complain about a lot of libXML depend extensions. Here are all the ones I had to disable:

--disable-libxml --disable-dom --disable-simplexml --disable-xml --disable-xmlreader --disable-xmlwriter --without-pear

Thani (22-Jul-2008 01:35)

One of the above mentioned to enable libxml. Instead use disable-all and enable only the required extensions. Otherwise it will complain of libxml for extensions that depend on libxml.

Neil Davis (04-Mar-2008 04:07)

If you have compiled php without specifying a --with-config-file-path=PATH
then reconfigure php using --with-config-file-path=PATH, you must do a "make clean" then "make" & "make install" before reinstalling. If you don't make clean first, phpinfo will report the new location set by --with-config-file-path=PATH, but actually be looking for php.ini in the old location.

I'm not sure if this is intended behavior or not but this is a gotcha that got me after compiling, then reconfiguring, then doing make install. It caused a little head scratching.

It's good practice to do make clean after any configuration change anyway. Bite the bullet and take the time to do it right to avoid unexpected module behavior.

-Neil

raj at ap dot krakow dot pl (07-Feb-2008 08:52)

It's not stated clearly anywhere in the documentation, but the CGI version won't build if you specify the --with-apxs= option to configure (the CLI version will, however). The only way I found to have *both* Apache module *and* CGI versions of PHP installed was to run configure/make twice - first with --with-apxs= option, to build the Apache module, then without it, to build the CGI binary.
I think if the doc says that the CGI version is built by default, it *should* be built by default, unless you specify --disable-cgi. If --with-apxs= automatically disables CGI, the --disable-cgi option doesn't seem to have any use.

codeslinger at compsalot dot com (30-Nov-2006 09:26)

Note: PHP5 has a zillion dependencies on libxml, it is not practical to disable it, you must install it.

libxml can be found here: http://www.xmlsoft.org/

But this is actualy a good thing; "Almost everything regarding XML support was rewritten for PHP 5".

For more info see: http://www.zend.com/php5/articles/php5-xmlphp.php

jovcic ate gseis stop ucla stop edu (09-Jul-2005 02:26)

If you'e compiling a shared extension (e.g. pspell) whose libs & headers are not in the usual place, use the following:

--with-pspell=shared,/my/custom/path/to/pspell/

Took me forever to figure out, since Google had no answer for me.

joerg at fenin dot de (14-Apr-2005 08:15)

If some options do not become active after doing a configure; make; make install, try to do a make clean after configure. That worked for me when enabling memory limts (--enable-memory-limit).

(16-Jan-2004 11:33)

>/usr/local/lib needs to be listed in /etc/ld.so.conf, but it should already
>be there on most systems.  The above notes all apply to Linux only,
>but may be useful on other platforms as well

 It is much simpler just to put /usr/local/pgsql/lib into /etc/ld.so.conf and then run ldconfig.

steve at njord dot org (06-Oct-2003 01:32)

If you're trying to build with --with-imap and your uw-imap stuff is built SSLTYPE=nopwd then you will fail the "Checking if IMAP works" check if you don't also build with --with-imap-ssl

Another hour and a half of my life lost to find that one.

Steve

squeeNoSpam at NoSpamAddress dot com (14-Aug-2002 08:06)

[Editor's note: The reason why some general options for the "configure" scripts are not documented is that said script is part of the GNU autoconf tools, and as such its general options are documented elsewhere, e.g.: http://www.gnu.org/manual/autoconf/index.html and http://www.airs.com/ian/configure/. Some are also documented in the INSTALL file that comes with the source distribution.]

The --prefix=PREFIX configure option isn't mentioned here. It apparently defaults to /usr/local, and sets the position of the php includes and libs. (in PREFIX/include/php and PREFIX/lib/php)

tysonlt from web_SPAMOFF_media com au (15-Apr-2002 06:42)

RE: Servlet support, I found that you need to configure --with-servlet=/usr/local/tomcat/common.

I found checking the configure script (always a good idea) that it looks for {dir_prefix}/lib/servlet.jar file, and this is found in the tomcat/common directory.

Hope this helps a bit!

ceo at l-i-e dot com (14-Aug-2001 08:05)

--enable-sigchild is only relevent to users of Oracle who are having <defunc> processes.

petrov at rice dot edu (03-Nov-2000 06:27)

If you are building with --with-pgsql=/some/dir, make sure that you still have libpq loaded up by ldconfig.  I compiled and installed postgres from the tarball and then had to manually create the symlinks in /usr/local/lib.  In particular, after you have built and installed postgres, you need to do the following (presuming you installed to /usr/local/pgsql):

# cd /usr/local/lib
# ln -s ../pgsql/lib/libpq.so.2.1 libpq.so.2.1
# ln -s ../pgsql/lib/libpq.so.2.1 libpq.so.2
# ln -s ../pgsql/lib/libpq.so.2.1 libpq.so
# ldconfig

/usr/local/lib needs to be listed in /etc/ld.so.conf, but it should already be there on most systems.  The above notes all apply to Linux only, but may be useful on other platforms as well.

--sam