From: [EMAIL PROTECTED]
Operating system: TurboLinux 4
PHP version: 4.1.2
PHP Bug Type: Compile Failure
Bug description: unresolved symbol __log1p
Unable to compile PHP/4.1.2 either as a module or static. Either way, I
get:
undefined reference to `__log1p'
If I compile static, I get:
<=== src/modules
gcc -c -I./os/unix -I./include -DLINUX=22 -I/var/src/php-4.1.2
-I/var/src/php-4.1.2/main -I/var/src/php-4.1.2/main
-I/var/src/php-4.1.2/Zend -I/var/src/php-4.1.2/Zend
-I/var/src/php-4.1.2/TSRM -I/var/src/php-4.1.2/TSRM -I/var/src/php-4.1.2
-DUSE_EXPAT -I./lib/expat-lite `./apaci` modules.c
gcc -c -I./os/unix -I./include -DLINUX=22 -I/var/src/php-4.1.2
-I/var/src/php-4.1.2/main -I/var/src/php-4.1.2/main
-I/var/src/php-4.1.2/Zend -I/var/src/php-4.1.2/Zend
-I/var/src/php-4.1.2/TSRM -I/var/src/php-4.1.2/TSRM -I/var/src/php-4.1.2
-DUSE_EXPAT -I./lib/expat-lite `./apaci` buildmark.c
gcc -DLINUX=22 -I/var/src/php-4.1.2 -I/var/src/php-4.1.2/main
-I/var/src/php-4.1.2/main -I/var/src/php-4.1.2/Zend
-I/var/src/php-4.1.2/Zend -I/var/src/php-4.1.2/TSRM
-I/var/src/php-4.1.2/TSRM -I/var/src/php-4.1.2 -DUSE_EXPAT
-I./lib/expat-lite `./apaci` -rdynamic \
-o httpd buildmark.o modules.o modules/standard/libstandard.a
modules/php4/libphp4.a main/libmain.a ./os/unix/libos.a ap/libap.a
lib/expat-lite/libexpat.a -rdynamic -Lmodules/php4 -L../modules/php4
-L../../modules/php4 -lmodphp4 -lpam -ldl -lcrypt -lresolv -lm -ldl
-lnsl -lresolv -lcrypt -lm -lcrypt -lndbm -ldl
modules/php4/libphp4.a(math.o): In function `zif_atanh':
/usr/include/__math.h:426: undefined reference to `__log1p'
collect2: ld returned 1 exit status
make[2]: *** [target_static] Error 1
make[2]: Leaving directory `/var/src/apache_1.3.23/src'
make[1]: *** [build-std] Error 2
make[1]: Leaving directory `/var/src/apache_1.3.23'
make: *** [build] Error 2
#
If I compile dynamic, it builds, but on startup, I get:
Starting httpd: httpd Syntax error on line 63 of
/etc/httpd/conf/httpd.conf:
Cannot load /usr/lib/apache/libphp4.so into server:
/usr/lib/apache/libphp4.so: undefined symbol: __log1p
Here is the ldd:
# ldd -r /usr/lib/apache/libphp4.so
libdl.so.2 => /lib/libdl.so.2 (0x4013a000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x4013d000)
libresolv.so.2 => /lib/libresolv.so.2 (0x4016a000)
libpam.so.0 => /lib/libpam.so.0 (0x40179000)
libm.so.6 => /lib/libm.so.6 (0x40181000)
libnsl.so.1 => /lib/libnsl.so.1 (0x4019f000)
libc.so.6 => /lib/libc.so.6 (0x401b6000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
undefined symbol: ap_user_id (/usr/lib/apache/libphp4.so)
undefined symbol: ap_server_root (/usr/lib/apache/libphp4.so)
undefined symbol: ap_group_id (/usr/lib/apache/libphp4.so)
undefined symbol: ap_user_name (/usr/lib/apache/libphp4.so)
undefined symbol: top_module (/usr/lib/apache/libphp4.so)
undefined symbol: ap_max_requests_per_child (/usr/lib/apache/libphp4.so)
undefined symbol: ap_table_get (/usr/lib/apache/libphp4.so)
undefined symbol: ap_update_mtime (/usr/lib/apache/libphp4.so)
undefined symbol: ap_kill_timeout (/usr/lib/apache/libphp4.so)
undefined symbol: ap_uudecode (/usr/lib/apache/libphp4.so)
undefined symbol: ap_setup_client_block (/usr/lib/apache/libphp4.so)
undefined symbol: ap_add_cgi_vars (/usr/lib/apache/libphp4.so)
undefined symbol: ap_getword (/usr/lib/apache/libphp4.so)
undefined symbol: ap_getword_nulls_nc (/usr/lib/apache/libphp4.so)
undefined symbol: ap_destroy_sub_req (/usr/lib/apache/libphp4.so)
undefined symbol: __log1p (/usr/lib/apache/libphp4.so)
undefined symbol: ap_pstrdup (/usr/lib/apache/libphp4.so)
undefined symbol: ap_log_error (/usr/lib/apache/libphp4.so)
undefined symbol: ap_table_add (/usr/lib/apache/libphp4.so)
undefined symbol: ap_sub_req_lookup_uri (/usr/lib/apache/libphp4.so)
undefined symbol: ap_run_sub_req (/usr/lib/apache/libphp4.so)
undefined symbol: ap_register_cleanup (/usr/lib/apache/libphp4.so)
undefined symbol: ap_signal (/usr/lib/apache/libphp4.so)
undefined symbol: ap_send_http_header (/usr/lib/apache/libphp4.so)
undefined symbol: ap_block_alarms (/usr/lib/apache/libphp4.so)
undefined symbol: ap_child_terminate (/usr/lib/apache/libphp4.so)
undefined symbol: ap_set_etag (/usr/lib/apache/libphp4.so)
undefined symbol: ap_rwrite (/usr/lib/apache/libphp4.so)
undefined symbol: ap_table_set (/usr/lib/apache/libphp4.so)
undefined symbol: ap_get_client_block (/usr/lib/apache/libphp4.so)
undefined symbol: ap_add_version_component (/usr/lib/apache/libphp4.so)
undefined symbol: ap_hard_timeout (/usr/lib/apache/libphp4.so)
undefined symbol: ap_rflush (/usr/lib/apache/libphp4.so)
undefined symbol: ap_set_last_modified (/usr/lib/apache/libphp4.so)
undefined symbol: ap_reset_timeout (/usr/lib/apache/libphp4.so)
undefined symbol: ap_unblock_alarms (/usr/lib/apache/libphp4.so)
undefined symbol: ap_add_common_vars (/usr/lib/apache/libphp4.so)
And, that symbol seems to exist in one of those libraries above. /lib is
in ld.so.conf, and I've done ldconfig.
# nm /lib/libm.so.6 | grep __log1p
000092a0 t __log1p
0000fd20 t __log1pf
000147b0 t __log1pl
I also seem to have this problem with PHP/4.1.0 and PHP/4.1.1, but can
build the patched 4.0.6 without problem.
Thanks!
--
Edit bug report at http://bugs.php.net/?id=15798&edit=1
--
Fixed in CVS: http://bugs.php.net/fix.php?id=15798&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=15798&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=15798&r=needtrace
Try newer version: http://bugs.php.net/fix.php?id=15798&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=15798&r=support
Expected behavior: http://bugs.php.net/fix.php?id=15798&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=15798&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=15798&r=submittedtwice