PHP build --with-pear fails: conflict over /tmp/pear/cache

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



I am trying to build PHP 5.2.5 for an RPM, on a system which already 
has PHP 5.2.4 installed (I built that RPM several months ago).  In 
order to build the RPM, I first want to make and install into a
temporary local directory, as an unprivileged user.
The build fails with this  error:

  Installing PEAR environment:      /hlg/rpmbuild/buildroot/php-5.2.5-1-
  manual/usr/local/lib/php/download directory "/tmp/pear/cache" is not 
  writeable.  Change download_dir config variable to a writeable dir

I have done this in the past and did not encounter this problem.  I
built a PHP 5.2.4 RPM in the fall to replace a PHP 5.2.4 RPM I had
built months earlier, which was already installed and in use, so I
should have run into the same problem then.  I get this problem now
with both 5.2.4 and 5.2.5.

Here is the make command I used, and context around the error:
  http://pastebin.com/f5c6ff39a

The key, I think, is the INSTALL_ROOT I defined for php's make.

In the past, I believe this affected the pear build as well; now, it
seems the pear build done by the php Makefile does not look at this,
and instead uses the same temp dir and subdirectories as it would use
at runtime, which is what puts it in conflict with what's already
installed and in use on the system.

However, I can't figure out what changed in PHP such that INSTALL_ROOT 
used to be honored but now isn't.

[ I filed this as a bug: http://bugs.php.net/bug.php?id=44354 ]

What's the right way to get the php build to install into a local
directory at build time, run under an unprivileged user, without
changing the default directories it will use at run time?
  -- Cos

[Index of Archives]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [Postgresql]     [PHP Books]     [PHP Databases]     [PHP SOAP]
  Powered by Linux