Thank you for that!
That was very insightful.
I dont think im going to try to update bind on these systems. Will stick with v11.1 then.
Thank you again! 

On Fri, Dec 17, 2021 at 5:09 PM Alexander Bokovoy <abokovoy@redhat.com> wrote:
On pe, 17 joulu 2021, Dave Macias via FreeIPA-users wrote:
>Hello,
>
>First time poster to this mailing list.
>Hopefully it's the right list.
>
>I am trying to build this package on centos7 but i am unsuccessful..

bind-dyndb-ldap versions tied to specific bind versions. On RHEL 7 we
have bind 9.11.4 which is supported by bind-dyndb-ldap 11.1.

Newer version of bind-dyndb-ldap requires newer version of bind as well.

Note that FreeIPA on RHEL 7 does not support operating with newer bind.
I do not recommend you going to a rabbit hole of trying to backport
everything to RHEL 7, that is very costly process without any support.


>I am though able to successfully build it under rocky linux 8 with the
>below steps:
>
>dnf install -y bind-devel make autoconf automake libtool openldap-devel
>libuuid-devel
>wget
>https://pagure.io/bind-dyndb-ldap/archive/v11.9/bind-dyndb-ldap-v11.9.tar.gz
>-O /tmp/bind-dyndb-ldap-v11.9.tar.gz
>cd /tmp/
>tar xf /tmp/bind-dyndb-ldap-v11.9.tar.gz
>cd bind-dyndb-ldap-v11.9
>autoreconf -fvi
>./configure --libdir=/opt/symas/lib/
>make
>make install
>
>
>When I try to build on centos7 kernel 3.10.0-1160.49.1.el7.x86_64
>I get stuck at "make", which produces this error:
>
>> make
>make  all-recursive
>make[1]: Entering directory `/tmp/bind-dyndb-ldap-v11.9'
>Making all in doc
>make[2]: Entering directory `/tmp/bind-dyndb-ldap-v11.9/doc'
>make[2]: Nothing to be done for `all'.
>make[2]: Leaving directory `/tmp/bind-dyndb-ldap-v11.9/doc'
>Making all in src
>make[2]: Entering directory `/tmp/bind-dyndb-ldap-v11.9/src'
>/bin/sh ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..
>   -Wall -Wextra -Werror -std=gnu99 -O2 -I/usr/include/bind9 -D_REENTRANT
>-I/builddir/build/BUILD/bind-9.11.4-P2/build/unit/atf/include
>-DDIG_SIGCHASE -D_GNU_SOURCE -g -O2 -fvisibility=hidden
>-fno-delete-null-pointer-checks -MT ldap_la-acl.lo -MD -MP -MF
>.deps/ldap_la-acl.Tpo -c -o ldap_la-acl.lo `test -f 'acl.c' || echo
>'./'`acl.c
>libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wall -Wextra -Werror
>-std=gnu99 -O2 -I/usr/include/bind9 -D_REENTRANT
>-I/builddir/build/BUILD/bind-9.11.4-P2/build/unit/atf/include
>-DDIG_SIGCHASE -D_GNU_SOURCE -g -O2 -fvisibility=hidden
>-fno-delete-null-pointer-checks -MT ldap_la-acl.lo -MD -MP -MF
>.deps/ldap_la-acl.Tpo -c acl.c  -fPIC -DPIC -o .libs/ldap_la-acl.o
>In file included from fwd_register.h:11:0,
>                 from ldap_entry.h:11,
>                 from acl.h:10,
>                 from acl.c:30:
>util.h:19:1: error: unknown type name 'bool'
> extern bool verbose_checks; /* from settings.c */
> ^
>acl.c:70:32: error: unknown type name 'bool'
> get_mode(const cfg_obj_t *obj, bool *value)
>                                ^
>acl.c: In function 'get_match_type':
>acl.c:119:22: error: 'dns_ssumatchtype_selfsubms' undeclared (first use in
>this function)
>  MATCH("ms-selfsub", dns_ssumatchtype_selfsubms);
>                      ^
>acl.c:64:13: note: in definition of macro 'MATCH'
>    *value = return_val;    \
>             ^
>acl.c:119:22: note: each undeclared identifier is reported only once for
>each function it appears in
>  MATCH("ms-selfsub", dns_ssumatchtype_selfsubms);
>                      ^
>acl.c:64:13: note: in definition of macro 'MATCH'
>    *value = return_val;    \
>             ^
>acl.c:120:24: error: 'dns_ssumatchtype_selfsubkrb5' undeclared (first use
>in this function)
>  MATCH("krb5-selfsub", dns_ssumatchtype_selfsubkrb5);
>                        ^
>acl.c:64:13: note: in definition of macro 'MATCH'
>    *value = return_val;    \
>             ^
>acl.c: In function 'get_fixed_name':
>acl.c:167:22: error: 'false' undeclared (first use in this function)
>        dns_rootname, false, NULL);
>                      ^
>In file included from fwd_register.h:11:0,
>                 from ldap_entry.h:11,
>                 from acl.h:10,
>                 from acl.c:30:
>acl.c: In function 'bracket_str':
>util.h:31:26: error: 'true' undeclared (first use in this function)
>    if (verbose_checks == true)  \
>                          ^
>acl.c:243:2: note: in expansion of macro 'CHECK'
>  CHECK(str_new(mctx, &tmp));
>  ^
>acl.c: In function 'acl_configure_zone_ssutable':
>util.h:31:26: error: 'true' undeclared (first use in this function)
>    if (verbose_checks == true)  \
>                          ^
>acl.c:273:2: note: in expansion of macro 'CHECK'
>  CHECK(bracket_str(mctx, policy_str, &new_policy_str));
>  ^
>acl.c:288:3: error: unknown type name 'bool'
>   bool grant;
>   ^
>acl.c:297:3: error: implicit declaration of function 'get_mode'
>[-Werror=implicit-function-declaration]
>   CHECK(get_mode(stmt, &grant));
>   ^
>In file included from fwd_register.h:11:0,
>                 from ldap_entry.h:11,
>                 from acl.h:10,
>                 from acl.c:30:
>acl.c: In function 'acl_from_ldap':
>util.h:31:26: error: 'true' undeclared (first use in this function)
>    if (verbose_checks == true)  \
>                          ^
>acl.c:372:2: note: in expansion of macro 'CHECK'
>  CHECK(bracket_str(mctx, aclstr, &new_aclstr));
>  ^
>cc1: all warnings being treated as errors
>make[2]: *** [ldap_la-acl.lo] Error 1
>make[2]: Leaving directory `/tmp/bind-dyndb-ldap-v11.9/src'
>make[1]: *** [all-recursive] Error 1
>make[1]: Leaving directory `/tmp/bind-dyndb-ldap-v11.9'
>make: *** [all] Error 2
>
>
>Not sure what I am missing. I'm sure it's some missing package, but which.
>Any input is much appreciated!
>
>Thank you,
>Dave




--
/ Alexander Bokovoy
Sr. Principal Software Engineer
Security / Identity Management Engineering
Red Hat Limited, Finland