php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #18254 make generates error
Submitted: 2002-07-09 21:49 UTC Modified: 2002-07-10 13:09 UTC
From: michael at epimorphic dot com Assigned:
Status: Closed Package: Compile Failure
PHP Version: 4CVS-2002-07-09 OS: Mac OS X 10.1.5
Private report: No CVE-ID: None
 [2002-07-09 21:49 UTC] michael at epimorphic dot com
On Mac OS X 10.1.5, with latest updates (including apache 
1.3.39) from Apple I am tring to compile PHP 4.3, the 
latest stable CVS snapshot (200207081200).

Libtool:  I downloaded gnu libtool 1.4.1 and applied the 
patch from http://savannah.gnu.org/patch/index.php?func=
detailpatch&patch_id=111&group_id=25 ad it seems to work 
fine.

I also patched ltmain.sh and a couple of files from Zend as 
indicated at the end of this message.  And in a fit of 
desparation, I edited configure to include -DHAVE_LIBDL in 
CPPFLAGS.

Then I configure with 

./configure --prefix=/usr --mandir=/usr/share/man --
infodir=/usr/share/info --sysconfdir=/etc --localstatedir=/
var --with-apxs --with-mysql --enable-magic-quotes --with-
zlib --disable-pear --with-xml --enable-debug --disable-
shared

This works fine (no errors reported).

While making in apache I get a few warnings such as 
"warning: `HAVE_MMAP' redefined" but the compile continues, 
until very near the end, when I get 

/usr/local/src/php-4.3/libtool: parse error: condition 
expected: xyes = [3170]

ad yet it continues to the bitter end, and does not 
actually report any fatal error.

But 'make install' ends in an error:

/usr/local/src/php-4.3/build/shtool mkdir -p "/usr/libexec/
httpd" && apxs -S LIBEXECDIR="/usr/libexec/httpd" -i -a -n 
php4 libs/libphp4.dylib 
apxs:Error: file libs/libphp4.dylib is not a DSO 
make[1]: *** [install-sapi] Error 1 
make: *** [install-recursive] Error

I have also tried just copying libphp4.so into the apache 
modules directory and applying it with apxs manually.  I 
get no complaints from apxs, but apache refuses to load php 
and dies.

I get essentially the same behavior WITHOUT the edit to 
configure (to include -DHAVE_LIBDL) and the --disable-
shared option in configure.

====== PATCHES =========

PATCH to ltmain.sh


--- ltmain.sh.old       2002-04-27 00:01:23.000000000 -0400
+++ ltmain.sh   2002-04-27 00:01:45.000000000 -0400
@@ -756,7 +756,7 @@
     generated=
     libobjs=
     ltlibs=
-    module=no
+    module=yes
     no_install=no
     objs=
     prefer_static_libs=no
@@ -1520,7 +1520,12 @@
 
 	if test $pass = conv; then
 	  # Only check for convenience libraries
-	  deplibs="$lib $deplibs"
+
+if test "$libdir"; then
+	deplibs="$lib $deplibs"
+fi
+
+#	  deplibs="$lib $deplibs"
 	  if test -z "$libdir"; then
 	    if test -z "$old_library"; then
 	      $echo "$modename: cannot find name of link library 
for \`$lib'" 1>&2
@@ -1629,14 +1634,22 @@
 	    compile_deplibs="$dir/$old_library $compile_deplibs"
 	    finalize_deplibs="$dir/$old_library 
$finalize_deplibs"
 	  else
-	    deplibs="$lib $deplibs"
+if test "$libdir"; then
+    deplibs="$lib $deplibs"
+fi 
+
+#	    deplibs="$lib $deplibs"
 	  fi
 	  continue
 	fi
 
 	if test $linkmode = prog && test $pass != link; then
 	  newlib_search_path="$newlib_search_path $ladir"
-	  deplibs="$lib $deplibs"
+if test "$libdir"; then
+    deplibs="$lib $deplibs"
+fi 
+
+#	  deplibs="$lib $deplibs"
 
 	  linkalldeplibs=no
 	  if test "$link_all_deplibs" != no || test -z 
"$library_names" ||
@@ -2858,7 +2858,18 @@
	if test -n "$export_symbols" && test -n 
"$archive_expsym_cmds"; then
	  eval cmds=\"$archive_expsym_cmds\"
	else
+      save_deplibs="$deplibs"
+      for conv in $convenience; do
+         tmp_deplibs=
+         for test_deplib in $deplibs; do
+           if test "$test_deplib" != "$conv"; then
+             tmp_deplibs="$tmp_deplibs $test_deplib"
+           fi
+         done
+         deplibs="$tmp_deplibs"
+      done
	  eval cmds=\"$archive_cmds\"
+      deplibs="$save_deplibs"
	fi
	IFS="${IFS= 	}"; save_ifs="$IFS"; IFS='~'
	for cmd in $cmds; do



PATCH to stuff in Zend:

--- Zend/zend_ini_scanner.c.old 2002-07-09 
00:01:12.000000000 -0400
+++ Zend/zend_ini_scanner.c 2002-07-09 00:01:12.000000000 -
0400
@@ -493,5 +493,5 @@
 #define yymore() yymore_used_but_not_detected
 #define YY_MORE_ADJ 0
 #define YY_RESTORE_YY_MORE_OFFSET
-char *yytext;
+//char *yytext;
 #define INITIAL 0

--- Zend/zend_language_scanner.c.old 2002-07-09 
00:01:12.000000000 -0400
+++ Zend/zend_language_scanner.c 2002-07-09 
00:01:12.000000000 -0400
@@ -2722,5 +2722,5 @@
 #define yymore() (yy_more_flag = 1)
 #define YY_MORE_ADJ yy_more_len
 #define YY_RESTORE_YY_MORE_OFFSET
-char *yytext;
+//char *yytext;
 #define INITIAL 0


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-07-09 21:51 UTC] michael at epimorphic dot com
Sorry:  I meant apache 1.3.26.
 [2002-07-09 23:04 UTC] sniper@php.net
I thought the latest CVS was supposed to work 'out-of-box' on MacOSX..please try this snapshot:

http://snaps.php.net/php4-latest.tar.gz

And DO NOT patch anything in it.

--Jani

 [2002-07-10 13:09 UTC] michael at epimorphic dot com
That worked just fine.

I tried it out of the box with the slightly (few days) 
earlier version I had, and got the errors I reported.  I 
suppose that information is irrelevant now.  Thanks.  Sorry 
for the false alarm.
 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Wed Oct 07 23:00:01 2026 UTC