FreeBSD/KnotResolverについて、ここに記述してください。
Contents
http://knot-resolver.readthedocs.io/en/v1.2.6/
ports情報
https://svnweb.freebsd.org/ports?view=revision&revision=421347
Various little quirks required to build on FreeBSD (これらは 1.2.6 では反映されている。)
https://gitlab.labs.nic.cz/knot/resolver/commit/98446d04fb4c5e4201707b9d9241640617f6b006?view=inline
https://gitlab.labs.nic.cz/knot/resolver/commit/7df48e6cbfd42652c2448743c473855bb26da3be
これらがあってもだめ。:-<
- FreeBSDで使うひとの数が少ないということか。
-- ToshinoriMaeno 2017-05-11 04:23:55
いろんなファイルを見つけ損なっているらしい。
Makefileをいじって、make infoを無理やり最後まで実行させました。
- そして、make を始めると、compilerがエラーを出して終了。(予想通り) headerファイルが足りないようだ。
-- ToshinoriMaeno 2017-05-11 07:08:35
includeが足りないことは、以下で分かる。
1. Ubuntu make
Target: Knot DNS Resolver 1.2.6-POSIX Compiler: cc -std=c99 -D_GNU_SOURCE -Wno-unused -Wtype-limits -Wformat -Wform at-security -Wall -I/home/tmaeno/knot-res/1.2.6 -I/home/tmaeno/knot-res/1.2.6/li b/generic -I/home/tmaeno/knot-res/1.2.6/contrib -I/home/tmaeno/knot-res/1.2.6/co ntrib/lmdb -DPACKAGE_VERSION="\"1.2.6\"" -DPREFIX="\"/usr/local\"" -DMODULEDIR=" \"/usr/local/lib/kdns_modules\"" -O2 -D_FORTIFY_SOURCE=2 -I/usr/local/include -I /usr/include/p11-kit-1 -I/usr/local/include -I/usr/local/include/luajit-2.0 -I /usr/local/include -I/usr/include/p11-kit-1 -Icontrib/ccan/compiler -Icontrib/c can/ilog -Icontrib/ccan/isaac -Icontrib/ccan/json -Icontrib/ccan/asprintf -Icont rib/murmurhash3 -DENABLE_COOKIES Variables --------- HARDENING: yes BUILDMODE: dynamic PREFIX: /usr/local PREFIX: /usr/local DESTDIR: BINDIR: /usr/local/bin SBINDIR: /usr/local/sbin LIBDIR: /usr/local/lib ETCDIR: /usr/local/etc/kresd INCLUDEDIR: /usr/local/include MODULEDIR: /usr/local/lib/kdns_modules Core Dependencies ------------ [yes] libknot (lib) [yes] system lmdb (lib) [yes] luajit (daemon) [yes] libuv (daemon) [yes] libgnutls (daemon)
2. FreeBSD
%cc -v ~ FreeBSD clang version 3.8.0 (tags/RELEASE_380/final 262564) (based on LLVM 3.8.0) Target: i386-unknown-freebsd11.0 Thread model: posix InstalledDir: /usr/bin
Target: Knot DNS Resolver 1.2.6-POSIX Compiler: cc -std=c99 -D_GNU_SOURCE -Wno-unused -Wtype-limits -Wformat -Wform at-security -Wall -I/usr/home/tmaeno/kresd -I/usr/home/tmaeno/kresd/lib/generic -I/usr/home/tmaeno/kresd/contrib -I/usr/home/tmaeno/kresd/contrib/lmdb -DPACKAGE _VERSION="\"1.2.6\"" -DPREFIX="\"/usr/local\"" -DMODULEDIR="\"/usr/local/lib/kdn s_modules\"" -O2 -D_FORTIFY_SOURCE=2 -Icontrib/ccan/asprintf -Icontrib/cc an/json -Icontrib/ccan/isaac -Icontrib/ccan/ilog -Icontrib/ccan/compiler -Icontr ib/murmurhash3 Variables --------- HARDENING: yes BUILDMODE: dynamic PREFIX: /usr/local PREFIX: /usr/local DESTDIR: BINDIR: /usr/local/bin SBINDIR: /usr/local/sbin LIBDIR: /usr/local/lib ETCDIR: /usr/local/etc/kresd INCLUDEDIR: /usr/local/include MODULEDIR: /usr/local/lib/kdns_modules Core Dependencies ------------ [yes] libknot (lib) [yes] embedded lmdb (lib) [yes] luajit (daemon) [yes] libuv (daemon) [yes] libgnutls (daemon)
これらが不足だとでるエラーに類似のエラーがでる。
#include <netinet/in.h> #include <sys/socket.h>
lib/utils.h に追加したら、gmake lib は完了した。
なぜUbuntuではでないのか。
- gcc, LVMの違いらしい。