php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #17362 can't open conftest.out
Submitted: 2002-05-22 10:39 UTC Modified: 2002-05-22 11:06 UTC
From: mccaffityr at epg dot lewis dot army dot mil Assigned:
Status: Closed Package: Compile Failure
PHP Version: 4.2.1 OS: Solaris8 and Solaris7
Private report: No CVE-ID: None
 [2002-05-22 10:39 UTC] mccaffityr at epg dot lewis dot army dot mil
I've sucessfully gotten 4.2.1 to work on a couple of Linux boxes, and 4.2.0 to work on several Solaris boxes. But I can not get 4.2.1 to make or compile on Solaris. I've tried with both gcc2.9.5.2 and gcc3.0.3. 

During the configure.... 

./configure --with-apache=../apache_1.3.24 --with-zlib-dir=/usr/local/lib --with-bz2=/usr/local/bin --with-gd=/usr/local/lib 
--with-pgsql=/usr/local/pgsql --enable-track-vars --enable-ftp 

It makes it down to 

checking for fclose declaration... ok 
checking for alloc.h... grep: can't open conftest.out 
yes 
checking for arpa/init.h... grep: can't open conftest.out 
yes 

... more stuff.... 

checking for arpa/unix.h... grep: can't open conftest.out 
yes 

checking for arpa/utime.h... grep: can't open conftest.out 
yes 

It keeps doing this for about 20 lines, the warnings go away 
for the rest of the configure. 

Then when I try to do the make.... 

In file included from zend_compile.h:24, 
from zend_language_parser.c:147: 
zend.h55:19: unix.h No such file or directory 
make[1]: *** [zend_language_parser.lo] Error 1 
make[1]: Leaving directory '/usr/share/src/php-4.2.1/Zend' 
make: *** [all-recursive] Error 1 

If I go back to 4.2.0, everything works great. If I take the same 
tar'd source file and put it on Linux it works great. But I cannot 
get 4.2.1 to work on Solaris8. 

I did a search, and I do not have a unix.h file anywhere.
(But it's the same with 4.2.0 and it works anyway).

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-05-22 10:49 UTC] derick@php.net
It's a bug in autoconf 2.13 (4.20 was created with 2.52, which causes a lot of problems on Linux).
THere are two things you can do:
1. rm configure && ./buildconf  (with autoconf 2.52 installed)
or
2. CC-gcc ./configure --your-switches

Derick
 [2002-05-22 11:05 UTC] mccaffityr at epg dot lewis dot army dot mil
I appear to have autoconf 2.53
(from www.sunfreeware.com)

pkginfo -l SMCautoc | grep VERSION
VERSION: 2.53

Do I need to go back to 2.52?
 [2002-05-22 11:06 UTC] derick@php.net
2.53 should work too, but I can't promise anything :)
 [2002-05-22 11:24 UTC] mccaffityr at epg dot lewis dot army dot mil
I still got the same error.  I will see if I can 2.52 somewhere.

{dcars1}[root]:/usr/src/php-4.2.1: rm configure && ./buildconf
rebuilding configure
rebuilding main/php_config.h.in
WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
WARNING: and `config.h.top', to define templates for `config.h.in'
WARNING: is deprecated and discouraged.

WARNING: Using the third argument of `AC_DEFINE' and
WARNING: `AC_DEFINE_UNQUOTED' allows to define a template without
WARNING: `acconfig.h':

WARNING:   AC_DEFINE([NEED_MAIN], 1,
WARNING:             [Define if a function `main' is needed.])

WARNING: More sophisticated templates can also be produced, see the
WARNING: documentation.
autoheader: `main/php_config.h.in' is created
{dcars1}[root]:/usr/src/php-4.2.1: make
Making all in Zend
make[1]: Entering directory `/usr/share/src/php-4.2.1/Zend'
/bin/sh ../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../main   -D_POSIX_PTHREAD_SEMANTICS -I../TSRM  -g -O2 -prefer-non-pic -static -c -o zend_language_parser.lo `test -f zend_language_parser.c || echo './'`zend_language_parser.c
In file included from zend_compile.h:24,
                 from zend_language_parser.c:147:
zend.h:55:19: unix.h: No such file or directory
make[1]: *** [zend_language_parser.lo] Error 1
make[1]: Leaving directory `/usr/share/src/php-4.2.1/Zend'
make: *** [all-recursive] Error 1
 [2002-05-22 11:47 UTC] mccaffityr at epg dot lewis dot army dot mil
This seems a little unorthodox, but I have it working with autoconf 2.53,  I was able to reproduce this on several systems.

[step 1]
./configure --with-apache=../apache_1.3.24
--with-zlib-dir=/usr/local/lib --with-bz2=/usr/local/bin
--with-gd=/usr/local/lib 
--with-pgsql=/usr/local/pgsql --enable-track-vars --enable-ftp 

This will error out with the original error.

[step 2]
rm configure && ./buildconf  

This will error out with basically the same error.

[step 3]
export CC=gcc ./configure --with-apache=../apache_1.3.24
--with-zlib-dir=/usr/local/lib --with-bz2=/usr/local/bin
--with-gd=/usr/local/lib 
--with-pgsql=/usr/local/pgsql --enable-track-vars --enable-ftp 

Then it works OK.  I tried just doing the export CC=gcc
first, but that doesn't seem to help.  This seems a little weird to me, but I'm happy, it appears to be working now.

Thanks.
 [2002-06-13 07:13 UTC] marsel dot moissis at intrasoft-intl dot com
I have experienced exactly the same problem, but according to your comments and looking in the variables configured (within config_vars.mk file) for a correct installation of PHP 4.2.0, I concluded the following. Note that my environment is Solaris 8 (SunOS5.8), have installed gcc 3.0.3 and autoconf 2.53, and I want to install PHP 4.2.1.

- At configuration, prefix the "./configure <my-options>" command with C compiler (CC) and C pre-processor (CPP) flags as below,

      CC=gcc CPP="gcc -E" ./configure <my-options>

Congigure will set C compiler and pre-processor as above, and no more "can't open conftest.out" will appear. Then "make" will not produce any errors and installation of PHP 4.2.1 will be smooth and simple.

- I realised (looking in configure code) that file "conftest.out" is generated and manipulated by a program code in C called "conftest.c". Since compilation and run of the above code in done during configuration, there is an obvious connection between the code and the set C compiler.

- Since configure, for some reason, cannot locate the right compiler, I force gcc by prefixing the configure command with the required compiler flags (as suggested by mccaffityr).

I hope this helps to make a smooth installation of PHP 4.2.1.

Regards
Marsel
 [2002-07-05 07:01 UTC] fryderyk at gjpoland dot com dot pl
I had the same problem with compilation on Solaris8 intel.
Problem disappeared after installing libtool 1.4 from www.sunfreeware.com

Regards 
Fryderyk
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun May 26 18:01:33 2024 UTC