After some trial and error I was able to compile Knot 2.4.0 for CentOS 6 using devtoolset-2.
We're in the process of updating our systems though, which I agree is the better solution going forward. Thank you Libor and Anand for your feedback. - Gonzalo On 19/01/17 10:16, Libor Peltan wrote: > Hello Gonzalo, > > we are pleased to hear any feedback from our users :) > > Yes, exactly, Knot DNS 2.4.0 uses compiler features not present in GCC 4.4. > > Maybe it would be better to migrate your server to newer system (e.g. > CentOS 7). If you really need to compile Knot DNS 2.4.0 on CentOS 6, > probably installing Cern Developer Toolset 2.0 (devtoolset-2), which > brings GCC 4.8, solves your problem. It needs to get familiar with > first, but it is a good tool anyway. Please let us know if it helps you. > > Have a wonderful day, > > Libor > > > Dne 19.1.2017 v 14:03 Gonzalo Muñoz napsal(a): >> Hello Ondřej, >> >> First of all, thank you and everyone at CZ.NIC for the great work you do >> on Knot. We've been using it for a while now without issues, and >> recently moved up to version 2 which was mostly painless. >> >> Up until Knot 2.3.2 I've had no trouble compiling on our CentOS 6 build >> server to distribute via an internal yum repo. When I tried to compile >> 2.4.0, however, I ran into the following error: >> >> make[3]: Entering directory >> `/home/rpmbuild/rpmbuild/BUILD/knot-2.4.0/src' >> CC knot/conf/libknotd_la-base.lo >> In file included from knot/conf/base.c:23: >> ./knot/nameserver/query_module.h: In function ‘mod_ctr_incr’: >> ./knot/nameserver/query_module.h:136: warning: implicit declaration of >> function ‘__atomic_add_fetch’ >> ./knot/nameserver/query_module.h:136: error: ‘__ATOMIC_RELAXED’ >> undeclared (first use in this function) >> ./knot/nameserver/query_module.h:136: error: (Each undeclared identifier >> is reported only once >> ./knot/nameserver/query_module.h:136: error: for each function it >> appears in.) >> ./knot/nameserver/query_module.h: In function ‘mod_ctr_decr’: >> ./knot/nameserver/query_module.h:144: warning: implicit declaration of >> function ‘__atomic_sub_fetch’ >> ./knot/nameserver/query_module.h:144: error: ‘__ATOMIC_RELAXED’ >> undeclared (first use in this function) >> ./knot/nameserver/query_module.h: In function ‘mod_ctrs_incr’: >> ./knot/nameserver/query_module.h:154: error: ‘__ATOMIC_RELAXED’ >> undeclared (first use in this function) >> ./knot/nameserver/query_module.h: In function ‘mod_ctrs_decr’: >> ./knot/nameserver/query_module.h:167: error: ‘__ATOMIC_RELAXED’ >> undeclared (first use in this function) >> >> As far as I can tell, and please correct me if I'm wrong, this is due to >> using an outdated version of GCC (4.4.7), which is the latest available >> on the epel repository for CentOS 6. We saw no issues building on our >> CentOS 7 build machine, where a more recent version of GCC is available >> from the epel repo. >> >> Is this expected? >> >> Thanks, best regards. >> >> - Gonzalo >> >> On 18/01/17 12:54, Ondřej Surý wrote: >>> Dear Knot DNS users, >>> >>> CZ.NIC is proud to release the 2.4.0 release of Knot DNS. This release >>> contains many improvements over 2.3.x release of Knot DNS. >>> >>> The Knot DNS 2.4.x is the new stable branch. Starting from this release >>> we are going to support current stable (2.4.x) and previous stable >>> (2.3.x) >>> branches, and at the same time we are deprecating previous Knot DNS >>> 1.6.x >>> release. >>> >>> Now the new features we are so excited about! >>> >>> * We have a new journal to store zone changes, it's key features are: >>> - all journals for all zones are in a single LMDB database >>> (defaults to storage/journal; 1G size) >>> - the occupied space is measured per zone >>> - old changesets get preserved after zone flush until we run out of >>> space >>> - if zone flushing is disabled and journal gets full, it tries to >>> free up >>> space by merging older changesets >>> - all changes are done by transactions, resulting in >>> always-consistent DB >>> (but some mutexes still necessary for opening DB && for keeping zone >>> contents consistent with journal) >>> - kjournalprint provides a way to list zones in journal >>> - old journal is automatically imported, but the configuration >>> needs to be >>> updated manually >>> >>> * Thanks to qp-trie (originally proposed by Tony Finch) adapted to >>> Knot DNS >>> we have much lower memory consumption when Knot DNS is used with many >>> zones >>> >>> * The zone timers and zone events have been refactored and improved >>> >>> * The SOA query and transfer now shares the TCP connection >>> >>> * There's a new statistics module for traffic measurements >>> >>> There are also several other bugfixes and improvements related to >>> transfers, >>> timers and other areas. >>> >>> And that's it! Thank you for using Knot DNS. And we are really looking >>> forward to your feedback. >>> >>> Full changelog: >>> https://gitlab.labs.nic.cz/labs/knot/raw/v2.4.0/NEWS >>> >>> Sources: >>> https://secure.nic.cz/files/knot-dns/knot-2.4.0.tar.xz >>> >>> GPG signature: >>> https://secure.nic.cz/files/knot-dns/knot-2.4.0.tar.xz.asc >>> >>> Documentation: >>> https://www.knot-dns.cz/docs/2.x/html/ >>> >>> >>> -- >>> Ondřej Surý -- Technical Fellow >>> -------------------------------------------- >>> CZ.NIC, z.s.p.o. -- Laboratoře CZ.NIC >>> Milesovska 5, 130 00 Praha 3, Czech Republic >>> mailto:[email protected] https://nic.cz/ >>> -------------------------------------------- >>> _______________________________________________ >>> knot-dns-users mailing list >>> [email protected] >>> https://lists.nic.cz/cgi-bin/mailman/listinfo/knot-dns-users >>> >> _______________________________________________ >> knot-dns-users mailing list >> [email protected] >> https://lists.nic.cz/cgi-bin/mailman/listinfo/knot-dns-users > > _______________________________________________ > knot-dns-users mailing list > [email protected] > https://lists.nic.cz/cgi-bin/mailman/listinfo/knot-dns-users _______________________________________________ knot-dns-users mailing list [email protected] https://lists.nic.cz/cgi-bin/mailman/listinfo/knot-dns-users
