Bug #75487 [Opn]: can't find res_ndestroy
Edit report at https://bugs.php.net/bug.php?id=75487&edit=1
ID: 75487
User updated by: ddmitrie at gmail dot com
Reported by: ddmitrie at gmail dot com
Summary: can't find res_ndestroy
Status: Open
Type: Bug
Package: Compile Failure
Operating System: Linux
PHP Version: 7.2.0RC5
Block user comment: N
Private report: N
New Comment:
7.2.0RC6 didn't change anything. Still fails to compile
Previous Comments:
------------------------------------------------------------------------
[2017-11-06 00:42:44] ddmitrie at gmail dot com
Description:
------------
configure makes certain attempts to find res_ndestroy() under various names, including for example
__res_ndestroy() and innocuous_res_ndestroy, in various libraries including bind, resolv
If I get it right, it finally finds this function in bind under __res_ndestroy name:
configure:79335: checking for __res_ndestroy in -lbind
configure:79360: cc -o conftest -I/usr/include -g -O2 -fvisibility=hidden -L/usr/lib
-Wl,-rpath,/home/myaccount/php/install/lib -L/home/myaccount/php/install/lib conftest.c -lbind
-lresolv -lcrypt -lrt -lrt -lm -ldl -configure:79360: $? = 0
configure:79369: result: yes
c
and main/php_config.h gets the following entry:
#define HAVE_RES_NDESTROY 1
all of sudden, make fails
it looks like res_ndestroy used by configure as an alias to __res_ndestroy didn't make through
and compiler still found res_ndestroy() calls, otherwise it would complaint about missed
__res_ndestroy
if I comment out HAVE_RES_NDESTROY in php_configure.h and rebuild with make clean all, it fails on
missed isfinite() function. Commenting out HAVE_ISFINITE brings yet another failure: undeclared
CALLGRIND_STOP_INSTRUMENTATION and CALLGRIND_START_INSTRUMENTATION symbols. Finally commenting out
HAVE_VALGRIND results in success.
Test script:
---------------
./configure --prefix=/home/myaccount/php/install \
--disable-fileinfo \
--with-libxml-dir=/home/myaccount/php/install && \
make
Actual result:
--------------
ext/standard/.libs/dns.o(.text+0x1608): In function `zif_dns_check_record':
php-7.2.0RC5/ext/standard/dns.c:422: undefined reference to `res_ndestroy'
ext/standard/.libs/dns.o(.text+0x1c1a): In function `zif_dns_get_record':
php-7.2.0RC5/ext/standard/dns.c:1013: undefined reference to `res_ndestroy'
ext/standard/.libs/dns.o(.text+0x1c9e):
php-7.2.0RC5/ext/standard/dns.c:937: undefined reference to `res_ndestroy'
ext/standard/.libs/dns.o(.text+0x1d60):
php-7.2.0RC5/ext/standard/dns.c:972: undefined reference to `res_ndestroy'
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=75487&edit=1
Thread (4 messages)