#42490 [Bgs->Fbk]: PHP will not compile with BIND 9 installed

From: Date: Wed, 05 Sep 2007 10:31:18 +0000
Subject: #42490 [Bgs->Fbk]: PHP will not compile with BIND 9 installed
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-117155@lists.php.net to get a copy of this message
ID: 42490 Updated by: jani@php.net Reported By: jerry at scene-naturally dot dyndns dot org -Status: Bogus +Status: Feedback Bug Type: Compile Failure Operating System: OS X 10.4.10 PHP Version: 5.2.4 New Comment: Reopening, see bug #25955 I think this must be the reason it fails on Macosx with bind 9. Try delete the line with BIND_8_COMPAT in it from main/php_config.h after running configure and before 'make'. Previous Comments: ------------------------------------------------------------------------ [2007-09-03 09:18:08] jani@php.net When you start messing around with your system, the results are unexpected. This is not PHP bug per se. ------------------------------------------------------------------------ [2007-09-02 15:34:52] jerry at scene-naturally dot dyndns dot org I have found a partial workaround, but it is very kludgy at best: 1) Turn off named. Turn off Postfix (master) and any other apps that are using the bind libraries. Just to be sure nothing odd happens, turn off the IMAP/POP servers and any of the second level apps that use those first level apps. Note: since these are usually started as LaunchDaemons or StartUpItems, you will need to disable them from re- starting. 2) Move the libbind.a and libbind9.a libraries out of /usr/local/lib to the desktop (or somewhere that is not in the search path of the Configure app). 3) Restart the machine. This is necessary. 4) Configure, make and install the new PHP. Take care of any post install stuff you need to do. 5) Undo step number 2. Undo step number 1. Restart the machine. ------------------------------------------------------------------------ [2007-08-31 15:28:13] jerry at scene-naturally dot dyndns dot org OS X does come with BIND (and it is almost ready to go out of the box) but it has a different set up. The libraries are /usr/lib/libresolv.9.dylib /usr/lib/libresolv.dylib The header file is /usr/include/resolv.h Note: The Developer Tools which you install to have compilers, etc also has the resolv.h file. The only libbind*.* libraries I have are from the BIND 9 installation. Linking the older header file to the new file does not fix things. ------------------------------------------------------------------------ [2007-08-31 07:05:29] jani@php.net You must have old libbind.* somewhere in your system which gets picked instead of the new one. Didn't you uninstall the old one before you installed the new one, apparently with different install prefix..? ------------------------------------------------------------------------ [2007-08-30 21:22:20] jerry at scene-naturally dot dyndns dot org The libraries installed by BIND 9 are libbind9.a libbind.a These are in /usr/local/lib libbind.a does seem to have the symbols, however, libbind9.a does not have these missing symbols. The path /usr/local/lib IS in LD_LIBRARY_PATH The configure app is finding either the library or the header file, but apparently not completely following though on that; the screen echo: checking if your OS can spawn processes with inherited handles... yes checking for res_nmkquery... no checking for __res_nmkquery... no checking for res_nmkquery in -lresolv... no checking for __res_nmkquery in -lresolv... no checking for res_nmkquery in -lbind... no checking for __res_nmkquery in -lbind... yes checking for res_nsend... no checking for __res_nsend... yes checking for dn_expand... yes This is in the configure.log as well. A small part of libbind.a: ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/42490 -- Edit this bug report at http://bugs.php.net/?id=42490&edit=1

« previous php.bugs (#117155) next »