php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #63073 master "make install" fails to install PEAR
Submitted: 2012-09-12 15:30 UTC Modified: 2013-07-04 14:10 UTC
Votes:13
Avg. Score:4.6 ± 0.6
Reproduced:13 of 13 (100.0%)
Same Version:12 (92.3%)
Same OS:1 (7.7%)
From: php at bof dot de Assigned: tyrael (profile)
Status: Closed Package: Compile Failure
PHP Version: 5.5 OS: openSUSE 11.4 64bit
Private report: No CVE-ID: None
 [2012-09-12 15:30 UTC] php at bof dot de
Description:
------------
I'm building PHP master from current git (at 
5246d6f02e52798e343bd5208692f1a5ed89b9d9)

Compile works fine, but on "make install", PEAR does not install. See "Actual 
result" regarding the error output I get.

I can successfully compile AND install, with identical configure, the PHP-5.4.6 
release, so I don't think that there is anything wrong with my build environment.

I tried to copy over pecl, pear, and the pear environment, from the 5.4 
build/install. pecl and pear search works. download or install fetches the file, 
but then fails with a similar "could not extract" error.

Test script:
---------------
make install

Expected result:
----------------
Installing PEAR environment:      /opt/php/php/
[PEAR] Archive_Tar    - already installed: 1.3.7
[PEAR] Console_Getopt - already installed: 1.3.0
[PEAR] Structures_Graph- already installed: 1.0.4
[PEAR] XML_Util       - already installed: 1.2.1
[PEAR] PEAR           - already installed: 1.9.4


Actual result:
--------------
Installing PEAR environment:      /opt/php/php/
[PEAR] Archive_Tar: could not extract the package.xml file from "phar://install-
pear-nozlib.phar/Archive_Tar-1.3.7.tar"
[PEAR] Console_Getopt: could not extract the package.xml file from 
"phar://install-pear-nozlib.phar/Console_Getopt-1.3.0.tar"
[PEAR] Structures_Graph: could not extract the package.xml file from 
"phar://install-pear-nozlib.phar/Structures_Graph-1.0.4.tar"
[PEAR] XML_Util: could not extract the package.xml file from "phar://install-
pear-nozlib.phar/XML_Util-1.2.1.tar"
[PEAR] PEAR: could not extract the package.xml file from "phar://install-pear-
nozlib.phar/PEAR-1.9.4.tar"


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2012-10-14 11:06 UTC] bobvin at pillars dot net
Branch master does not compile and also is missing file sapi/fpm/php-
fpm.service.in

Running git-bisect to find the break point,

This is the commit that broke compilation:

commit 4968fa644b0849321e1761e52b8db15dd46f9b75
Author: theanomaly.is@gmail.com <googleguy@googleguy-virtualbox.(none)>
Date:   Tue Apr 17 07:31:36 2012 -0400

    Fixed bug #61038; "Z" and better behavior for unpack()
    
    Added new "Z" argument to pack/unpack, now allowing "a" to return
    data without stripping, and "A" strips all trailing white space,
    while "Z" will strip everything after the first null.
 [2012-12-06 04:55 UTC] danielc@php.net
This needs to be fixed so PHP 5.5 can be properly tested.  Things work as expected when building PHP <= 5.4.
 [2012-12-06 04:55 UTC] danielc@php.net
-PHP Version: master-Git-2012-09-12 (Git) +PHP Version: 5.5
 [2012-12-06 08:08 UTC] pajoye@php.net
-Status: Open +Status: Feedback
 [2012-12-06 08:08 UTC] pajoye@php.net
It will be much easier to debug if you could provide a small script, even using a 
pear package as input.
 [2012-12-20 14:38 UTC] korvin1986 at gmail dot com
I've tried PHP-5.5.0alpha2 and go-pear.phar script (http://pear.php.net/go-pear.phar) :

Log:

/usr/bin/php go-pear.phar 

Below is a suggested file layout for your new PEAR installation.  To
change individual locations, type the number in front of the
directory.  Type 'all' to change all of them or simply press Enter to
accept these locations.

 1. Installation base ($prefix)                   : /usr
 2. Temporary directory for processing            : /tmp/pear/install
 3. Temporary directory for downloads             : /tmp/pear/install
 4. Binaries directory                            : /usr/bin
 5. PHP code directory ($php_dir)                 : /usr/share/pear
 6. Documentation directory                       : /usr/docs
 7. Data directory                                : /usr/data
 8. User-modifiable configuration files directory : /usr/cfg
 9. Public Web Files directory                    : /usr/www
10. Tests directory                               : /usr/tests
11. Name of configuration file                    : /etc/pear.conf

1-11, 'all' or Enter to continue: 
Beginning install...
Configuration written to /etc/pear.conf...
Initialized registry...
Preparing to install...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.7.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.3.0.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.9.4.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.4.tar...
installing phar://go-pear.phar/PEAR/go-pear-tarballs/XML_Util-1.2.1.tar...
could not extract the package.xml file from "phar://go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.7.tar"
could not extract the package.xml file from "phar://go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.3.0.tar"
could not extract the package.xml file from "phar://go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.9.4.tar"
could not extract the package.xml file from "phar://go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.4.tar"
could not extract the package.xml file from "phar://go-pear.phar/PEAR/go-pear-tarballs/XML_Util-1.2.1.tar"
install failed
 [2013-01-14 04:21 UTC] sixd@php.net
This is still an issue in PHP 5.5. and master:
1. Download a snap
2. $ ./configure
3. $ make
4. $ make install
 [2013-01-14 04:21 UTC] sixd@php.net
-Status: Feedback +Status: Open
 [2013-01-14 04:23 UTC] sixd@php.net
-Assigned To: +Assigned To: googleguy
 [2013-01-14 05:57 UTC] googleguy@php.net
It was discussed on IRC that this change was applied in order to bring PHP's 
implementation of pack() to be more inline with Perl's implementation (see 
https://bugs.php.net/61038 for details) and thus why the change was introduced 
in PHP 5.5 instead of 5.4, which was already final at the time. The BC was taken 
into consideration, but the manual never specified that this was the defined 
behavior. So we had made the decision at the time that this BC would be worth 
taking in 5.5 for bringing the implementations inline.

The BC concerns seem to be fiarly limited in in immediate scope to Archive_Tar, 
which seems to be a trivial patch (see http://pear.php.net/bugs/bug.php?
id=19746&edit=12&patch=archive_tar_php55.patch&revision=1355241213 also) and 
Igor Wiedler seems willing to apply it. Obviously there can more BC out there 
with people that rely on this behavior in their existing code, but I can not 
gauge this if I just base it on the number of open bugs in the bug tracker that 
have to do with pack and PHP 5.5.

So in light of these events the plan is to ask that Archive_Tar be patched to 
resolve the make install issue and remain consistent with the Perl 
implementation, which also seems consistent with Ruby's implementation of pack. 
The spec itself seems a bit ambiguous as noted earlier in this thread, but I 
think PHP will benefit more from being consistent with the other 
implementations.

Please let me know if there are other BC concerns that have not yet come up.
 [2013-03-19 07:11 UTC] alex at corretge dot cat
Same issue in Ubuntu 12.04 LTS

I do:

./buildconf --force

./configure --with-apxs2=/usr/bin/apxs2 --with-openssl --with-zlib --enable-bcmath 
--with-bz2=/bin/bzip2 --enable-calendar --enable-exif --enable-ftp --with-gd --
with-jpeg-dir=/usr/lib --with-png-dir=/usr/lib --enable-gd-native-ttf --with-
gettext --enable-mbstring --enable-sockets --enable-wddx --with-xmlrpc --with-xsl 
--enable-zip --with-pear --with-kerberos  --enable-sysvmsg --enable-sysvsem --
enable-sysvshm --enable-pcntl --enable-shmop --enable-mysqlnd --with-mysqli --
with-pdo-mysql --enable-opcache

make

make install
 [2013-03-24 02:47 UTC] tyrael@php.net
-Status: Assigned +Status: Verified
 [2013-03-24 02:47 UTC] tyrael@php.net
The problem is in the phar file we are pulling from pear.php.net, see 
https://pear.php.net/bugs/bug.php?id=19867 for the details
 [2013-03-25 22:19 UTC] tyrael@php.net
-Status: Verified +Status: Closed -Assigned To: googleguy +Assigned To: tyrael
 [2013-03-25 22:19 UTC] tyrael@php.net
The pear guys(Daniel O'Connor, Christian Weiske to be precise) merged the PR and 
rebuilt the phar install-pear-nozlib.phar and install-pear-nozlib.phar files, so 
the issue should be resolved, please report if you still experience pear 
installation problems with php 5.5.
 [2013-03-26 17:17 UTC] alex at corretge dot cat
I have the same issue after pull the last code for branch 5.5

commit 4d73bb070ee90336984f275eb24f7d1ca1cff1ea
Merge: 5ae6f58 ed31582

Installing PEAR environment:      /usr/local/lib/php/
[PEAR] Archive_Tar: could not extract the package.xml file from "phar://install-
pear-nozlib.phar/Archive_Tar-1.3.7.tar"
[PEAR] Console_Getopt: could not extract the package.xml file from 
"phar://install-pear-nozlib.phar/Console_Getopt-1.3.0.tar"
[PEAR] Structures_Graph: could not extract the package.xml file from 
"phar://install-pear-nozlib.phar/Structures_Graph-1.0.4.tar"
[PEAR] XML_Util: could not extract the package.xml file from "phar://install-pear-
nozlib.phar/XML_Util-1.2.1.tar"
[PEAR] PEAR: could not extract the package.xml file from "phar://install-pear-
nozlib.phar/PEAR-1.9.4.tar"
 [2013-03-26 17:22 UTC] alex at corretge dot cat
After pull the last code for branch 5.5 the file

ls -al pear/install-pear-nozlib.phar
-rw-r--r-- 1 root root 3692810 Apr 10  2012 pear/install-pear-nozlib.phar

with no log (and changes) for it:

git log pear/install-pear-nozlib.phar

show nothing
 [2013-07-04 13:33 UTC] tommy dot scheunemann at evolver dot de
Trying to build PHP 5.5.0 on a Debian Squeeze still shows this error. PHP itself building fine, PEAR won't
 [2013-07-04 14:10 UTC] johannes@php.net
The pear/install-pear-nozlib.phar file will be pulled in during make install  (for uilds from git), so please delete it and run make install again to use the fixed file.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue May 07 02:01:30 2024 UTC