[Bug 411890] Re: karmic: Compiling php fails with autoconf 2.64

Elan Ruusamäe glen at delfi.ee
Tue Nov 10 17:33:57 CET 2009


** Also affects: pld-linux
   Importance: Undecided
       Status: New

** Changed in: pld-linux
       Status: New => Fix Released

-- 
karmic: Compiling php fails with autoconf 2.64
https://bugs.launchpad.net/bugs/411890
You received this bug notification because you are subscribed to PLD
Linux.

Status in “php5” package in Ubuntu: Fix Released
Status in PLD Linux Distribution: Fix Released

Bug description:
Binary package hint: php5

On a fresh 9.10 (karmic) system, php5 (5.2.10) source package will not compile.
./configure fails with "cat: confdefs.h: No such file or directory"

Steps:

# Install brand new Ubuntu karmic release (alpha 3)
sudo pbuilder --create --distribution karmic
dget -xu https://launchpad.net/ubuntu/karmic/+source/php5/5.2.10.dfsg.1-1ubuntu1/+files/php5_5.2.10.dfsg.1-1ubuntu1.dsc
cd php5_5.2.10.dfsg.1/
pdebuild -- --distribution karmic

cat: confdefs.h: No such file or directory
../configure: 488: ac_fn_c_try_run: not found
../configure: 488: 5: Bad file descriptor
../configure: 488: :: checking for pthreads_cflags: not found
../configure: 488: 6: Bad file descriptor

This error has been reproduced many times on the build farm, and also independently on 2 developer's machines. Build log attached.

This source package can be compiled successfully on jaunty (after resolving php5.2.10 dependencies), with no such errors. The build logs between karmic and jaunty looks almost identical.

Examination of the build area afterwards shows that the 'condefs.h' file do exist in the apache2-build diectory however, the ./configure script is a complete mess, after being regenerated with a different version of autoconf (2.64 instead of 2.13 although Jaunty also has a different autocond which is 2.63). This error appears to be caused somewhere around the 'buildconf --force' stage in the rules file. At a time when "./configure" is being regenerated.

So I compared with those older Successful build logs from the build farm. Side-by side there's only 2 lines different:

Success log:

buildconf: checking installation...
buildconf: autoconf version 2.63 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
           Running cvsclean for you.
           To avoid this, install autoconf-2.13.
rebuilding aclocal.m4
rebuilding configure
aclocal.m4:2099: PHP_PROG_LEX is expanded from...
configure.in:463: warning: AC_CACHE_VAL(have_broken_glibc_fopen_append, ...): suspicious cache-id, must contain _cv_ to be cached

Fail log:

buildconf: checking installation...
buildconf: autoconf version 2.64 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
           Running cvsclean for you.
           To avoid this, install autoconf-2.13.
rebuilding aclocal.m4
rebuilding configure
configure.in:463: warning: AC_CACHE_VAL(have_broken_glibc_fopen_append, ...): suspicious cache-id, must contain _cv_ to be cached

This package was originally build when karmic has autoconf 2.63. Now karmic is autoconf 2.64 then php5 will fail to build. (I am unsure what is the correct resolution for this.)



More information about the pld-bugs mailing list