Autor: OpenMacNews Data: A: exim-users CC: Tony Finch Assumpte: Re: [exim] building exim on OSX against *external* bind9 (*not* w/
BIND_8_COMPAT) failing @ make
hi tony,
>> i'd now like to instead build exim against an external instance of bind9.
>
> Why?
well, for a variety of reasons. suffice it to say that other parts of my
project rdirectly equire some features of bind9, and it's best for me to have
everything building against the same sets of libs (db, bind, etc.).
>> although i've managed to figure out binding against external berkeley db,
>> etc., bind9 is a mite confusing.
>> in any iteration i've tried, removing the -DBIND_8_COMAT and (trying to) link
>> to the external bind9's resolver (-lbind) results in a make fail.
>
> This is because the native Bind 9 resolver library has a different API to
> the standard Unix resolver library, and Exim is written to use the
> latter.
i think i've just learned something. the "standard UNIX resolver library"?
do you mean that that "std lib" is *not* "from" bind, i.e. ? now that you
mention it, that wouldn't make any licensing sense, would it?
perhaps it should have been obvious, but i did not realize that.
> In order to use programs like Exim with Bind 9's resolver you must
> define BIND_8_COMPAT so that Bind 9's implementation of the standard Unix
> resolver API is available.
ok. so iiuc, i *should* be able to build against an external bind build, i.e. -
*my* -lbind, rather than Apple's included -lresolv, but will still need to
implement some sort of compatibility mapping (e.g., a BIND_8_COMPAT equivalent)
to ensure that the lbind maps to the "standard unix resolver lib".
true?
if so, i, apparently, need to go do some homework on the BIND_8_COMPAT
directive, and/or decide to not monkey with it and use Apple's 'stuff'.