On 21.02.2012 07:06, gewehre@xxxxxxx wrote:
> I had never attempted building with the --disable-internal-dns
option
before. Today, in the hope of enabling cache_dns_program, I tried it
with
squid-3.2.0.15-20120218-r11508. It barfed building
/usr/local/squid/libexec/dnsserver:
<snip>
> After searching online, this appears to be an issue peculiar to
Mac OS X
10.3 or 10.4. I'm on 10.4.11. I tried a variety of workarounds:
>
> 1. Changing Makefile's "LIBS = " to "LIBS = -lkvm -lm -lresolv
-lz"
> 2. Changing Makefile's "LDFLAGS=" to "LDFLAGS=-lresolv"
> 3. "export LIBS=-lresolv"
> 4. "export LDFLAGS=-lresolv"
>
> The only option that worked gets squid compiling with
--disable-internal-dns is #4. I'm curious why the other three
weren't effective.
The dnsserver make rules are a little broken. It gets passed the
default
*FLAGS lists but not LIBS. Thank you for finding this.
Was it Makefile or src/Makefile you changed for (1) and (2)?
dsserver is
built in src/Makefile.
Amos
Thanks for the hint. I only modified ./Makefile. I wasn't aware of
the other Makefile(s) :P
Updating src/Makefile apparently does the trick too.
On a related note, does dnsserver not support IPv6 name servers? I
keep seeing "IPv6 nameservers not supported on this resolver" during
squid startup in cache.log.
Only on Linux.
dnsserver is deprecated and only supported at all because the internal
DNS client does not yet support use alternative NSS resolver methods
like mDNS. But to gain that it has some severe speed limitations (~200
lookups per second maximum).
Amos