problems building php-4.ORC1 on Solaris and Free BSD

From: Date: Wed, 03 May 2000 00:22:22 +0000
Subject: problems building php-4.ORC1 on Solaris and Free BSD
Groups: php.dev 
Request: Send a blank email to php-dev+get-18367@lists.php.net to get a copy of this message
I've been having difficulties building apache/php-4.ORC1 on Free BSD, so I gave Solaris a shot - different problems, still can't build. I've been able to create a good Apache with the php4 beta 4, so it seems the problem is with RC1. On both platforms, I've been building Apache 1.3.12 with PHP 4 RC1 and mod_auth_mysql 2.20 I'm passing this info along, hoping there may be a workaround or patch (or maybe I'm just doing something wrong). I've been very impressed with the beta 4 version, and would love to get the new one going. Scenario 1: Solaris 2.6 ======================= using gcc version 2.8.1 cd /home/philg/com/apache_1.3.12 ./configure --prefix=/home/philg/com/apache-3.12 cd /home/philg/com/php-4.0RC1 ./configure --with-apache=/home/philg/com/apache_1.3.12 \ --with-mysql=/usr/local/pkg/mysql \ --enable-track-vars make I get a few warnings: /bin/sh ../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -DXML_BYTE_ORDER=21 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -g -O2 -Wall -c zend-scanner.c zend-scanner.c:5755: warning: `yy_fatal_error' defined but not used zend-scanner.c:5740: warning: `yy_top_state' defined but not used and /bin/sh ../libtool --silent --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -DXML_BYTE_ORDER=21 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -g -O2 -Wall -c zend_operators.c zend_operators.c: In function `is_numeric_string': zend_operators.c:1368: warning: implicit declaration of function `finite' and finally get a fatal error while building "standard": gcc -DHAVE_CONFIG_H -I. -I/home/philg/com/php-4.0RC1/ext/standard -I../.. -I../../Zend -I/home/philg/com/php-4.0RC1 -I/home/philg/com/apache_1.3.12/src/include -I/home/philg/com/apache_1.3.12/src/os/unix -I/usr/local/pkg/mysql/include -I/home/philg/com/php-4.0RC1/ext/xml/expat/xmltok -I/home/philg/com/php-4.0RC1/ext/xml/expat/xmlparse -DXML_BYTE_ORDER=21 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -g -O2 -Wall -c basic_functions.c && touch basic_functions.lo basic_functions.c:324: `php_if_dl' undeclared here (not in a function) basic_functions.c:324: initializer element for `basic_functions[201].handler' is not constant basic_functions.c: In function `php_info_basic': basic_functions.c:708: warning: implicit declaration of function `php_info_dl' *** Error code 1 make: Fatal error: Command failed for target `basic_functions.lo' Scenario 2: Free BSD 2.2.2 ========================== using gcc version 2.7.2.1 Configuration: cd /com/apache_1.3.12 ./configure --prefix=/com/apache-3.12 cd /com/php-4.0RC1 ./configure --with-apache=/com/apache_1.3.12 \ --with-mysql=/com/mysql \ --with-gd=/com/src/gd1.3 --enable-track-vars make make install cd ../apache_1.3.12 ./configure --prefix=/com/apache-3.12 --activate-module=src/modules/php4/libphp4.a \ --enable-module=all --enable-module=rewrite \ --activate-module=src/modules/auth_mysql/libauth_mysql.a \ --enable-module=expires --enable-module=headers \ --enable-module=info make I get through the compilations OK, but when I get to the final Apache linking, I get the following error: gcc -funsigned-char -I/com/php-4.0RC1 -I/com/php-4.0RC1/Zend -I/com/php-4.0RC1/Zend \ -I/com/php-4.0RC1 -DUSE_EXPAT -I./lib/expat-lite ./apaci -o httpd buildmark.o modules.o \ modules/example/libexample.a modules/php4/libphp4.a modules/experimental/libexperimental.a \ modules/standard/libstandard.a modules/proxy/libproxy.a main/libmain.a ./os/unix/libos.a \ ap/libap.a lib/expat-lite/libexpat.a -L/com/src/gd1.3 -L/com/mysql/lib/mysql \ -L/com/src/gd1.3 -L/com/mysql/lib/mysql -Lmodules/php4 -L../modules/php4 -L../../modules/php4 \
-lmodphp4       -lmysqlclient -lgd -lbind -lm -lcrypt
fopen-wrappers.c:742: Undefined symbol `___error' referenced from text segment fopen-wrappers.c:752: Undefined symbol `___error' referenced from text segment zend_operators.c:1356: Undefined symbol `___error' referenced from text segment zend_operators.c:1358: Undefined symbol `___error' referenced from text segment zend_operators.c:1365: Undefined symbol `___error' referenced from text segment zend_operators.c:1367: Undefined symbol `___error' referenced from text segment ./zend-scanner.l:1126: Undefined symbol `___error' referenced from text segment ./zend-scanner.l:1128: Undefined symbol `___error' referenced from text segment posix.c:158: Undefined symbol `___error' referenced from text segment posix.c:0: More undefined symbol ___error refs follow * Digging arounf fopen-wrappers, I see the following: fopen-wrappers.c:742: Undefined symbol `___error' referenced from text segment /* read the response */ result = php_get_ftp_result(*socketd); if (mode[0] == 'r') {
          /* when reading file, it must exist */
          if (result > 299 || result < 200) {
                  php_error(E_WARNING, "File not found");
                  free_url(resource);
                  SOCK_FCLOSE(*socketd);
                  *socketd = 0;
                  errno = ENOENT;
                  return NULL;
I'm guessing this is a resolution problem, perhaps because I'm using an older Free BSD. But since the beta 4 worked, I'm wondering what has changed. This is the first time in the last three years I've had such difficulty building PHP, and would love to move ahead with version 4. thanks.

« previous php.dev (#18367) next »