Re: PHP 4.0 Bug #5046 Updated: Install tries to put stuff in /usr/local even when --prefix is specified
| From: | Jonathan Leffler | Date: | Fri, 11 Aug 2000 00:15:25 +0000 |
| Subject: | Re: PHP 4.0 Bug #5046 Updated: Install tries to put stuff in /usr/local even when --prefix is specified | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-28534@lists.php.net to get a copy of this message | ||
On 11 Aug 2000, Bug Database wrote:
>ID: 5046
>Updated by: sniper
>Reported By: jleffler@informix.com
>Status: Closed
>Bug Type: Installation problem
>Assigned To:
>Comments:
>
>--------USER FEEDBACK-----------
>
>PHP 4.0.1pl2 still does the same as originally reported with PHP 4.0.0.
>
>I configure around it now, specifying --prefix but also:
>
>PHPDIR=/usr/php/v4.0.1pl2
All references to PHPDIR2 should be to PHPDIR. My mistake.
>./configure --prefix=$PHPDIR2 \
> --with-apxs=/usr/apache/v1.3.12/bin/apxs \
> --with-informix=/usr/informix/9.20.UC2 \
> --with-exec-dir=$PHPDIR2/bin \
> --with-lib-dir=$PHPDIR2/lib \
> --with-config-file-path=$PHPDIR2/lib
>
>I doubt whether I needed both --with-lib-dir and --with-exec-dir, but
>the --with-lib-dir does not set the config file path either.
>
>-------END OF USER FEEDBACK --------
>
><cut configure --help >
>--with-exec-dir[=DIR] Only allow executables in DIR when in safe mode
><end cut>
>
>This isn't what you want to accomplish??
>And there isn't any --with-lib-dir in php4's configure. (or I'm blind)
OK; I merely copied what I used as the command line to get the d**n thing
relocated completely out of config.status. I apologize for mentioning an
erroneous configuration item.
>--with-config-file-path is used to tell php where to look for php.ini.
And I wish to argue, strongly, that setting --prefix=/usr/php should
alter the default location of the php.ini file from
/usr/local/lib/php/php.ini to /usr/php/lib/php/php.ini.
>--Jani
>
>
>
>Full Bug description available at: http://bugs.php.net/?id=5046
For most products, specifying --prefix relocates everything under the
specified directory, unless an auxilliary --with-xyz changes something.
For example, I relocate everything in Apache with --prefix=/usr/apache
and that's all it takes. Nothing is left dangling in /usr/local once I
use --prefix. And I'm under the impression that's what autoconf
expects; you relocate a package with --prefix, and only very specially
do any other relocations, and you certainly don't quietly leave
something unrelocated when you specify --prefix. I don't know if I can
express how irritating it is sufficiently clearly without being
obnoxious to people who are probably innocent bystanders.
For PHP, specifying --prefix does not relocate everything. You have to
specify at least two separate items --prefix and --config-file-path.
With Apache, the config file is in $PREFIXDIR/conf automatically; I
would expect that PHP should act the same way -- it is the exception to
the Open Source community rule that autoconf'd programs can relocate
everything with --prefix.
I happen to hit the problem particularly hard; /usr/local is automounted
for me and is automounted readonly. It makes it kind of obvious,
especially since I can never use the default location, /usr/local, for
any software, so everything I compile always needs --prefix.
If you don't fix the bug, it won't be the end of the world. I will
probably survive. But I won't be installing PHP as often as I might if
you do fix it. I'll go with Perl, or Tcl/Tk, or Python instead since
they do all handle relocation of *everything* via --prefix and are
therefore that much easier to remember how to install. Having to grep
through configure to find out what the option is to specify the config
file path is each time is frustrating in the extreme.
--
Yours,
Jonathan Leffler (Jonathan.Leffler@Informix.com) #include <disclaimer.h>
Guardian of DBD::Informix v1.00.PC1 -- http://www.perl.com/CPAN
"I don't suffer from insanity; I enjoy every minute of it!"