root@client-chrony:/tmp# pkg-config --cflags --libs nss
-I/usr/include/nss -I/usr/include/nspr -lnss3 -lnssutil3 -lsmime3 -lssl3 -lplds4 -lplc4 -lnspr4
-------------------------------------------------------------------------------------------------
root@client-chrony:/tmp# export CPPFLAGS="-I/usr/include/nss"
root@client-chrony:/tmp# export
declare -x CPPFLAGS="-I/usr/include/nss"
[... SNIP ...]
-------------------------------------------------------------------------------------------------
Run configure again:
root@client-chrony:/tmp# sh install.sh
Configuring for Linux-x86_64
Checking for 64-bit time_t : Yes
NTP time mapped to 1965-10-27T22:47:18Z/2101-12-04T05:15:34Z
Checking for math : No
Checking for math in -lm : Yes
Checking for <stdint.h> : Yes
Checking for <inttypes.h> : Yes
Checking for IPv6 support : Yes
Checking for in6_pktinfo : No
Checking for in6_pktinfo with _GNU_SOURCE : Yes
Checking for getaddrinfo() : Yes
Checking for pthread : Yes
Checking for <sys/timepps.h> : No
Checking for <timepps.h> : No
Checking for libcap : No
Checking for <linux/rtc.h> : Yes
Checking for <linux/ptp_clock.h> : Yes
Checking for clock_gettime() : No
Checking for clock_gettime() in -lrt : Yes
Checking for sched_setscheduler() : Yes
Checking for mlockall() : Yes
Checking for editline : No
Checking for readline : No
Checking for readline with -lncurses : No
Checking for NSS : No
Checking for tomcrypt : No
Features : +CMDMON +NTP +REFCLOCK +RTC -PRIVDROP -DEBUG -READLINE +ASYNCDNS +IPV6 -SECHASH
Creating Makefile
Creating chrony.conf.5
Creating chrony.texi
Creating chronyc.1
Creating chronyd.8
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c array.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c cmdparse.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c conf.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c local.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c logging.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c main.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c memory.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c mkdirpp.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c reference.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c regress.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c rtc.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sched.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sources.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sourcestats.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c stubs.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c smooth.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c tempcomp.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c util.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c hash_intmd5.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys_generic.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys_linux.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c wrap_adjtimex.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c cmdmon.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c manual.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c pktlength.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_core.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_io.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_sources.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c addrfilt.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c clientlog.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c keys.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c nameserv.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_phc.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_pps.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_shm.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_sock.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c nameserv_async.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c rtc_linux.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -o chronyd array.o cmdparse.o conf.o local.o logging.o main.o memory.o mkdirpp.o reference.o regress.o rtc.o sched.o sources.o sourcestats.o stubs.o sys.o smooth.o tempcomp.o util.o hash_intmd5.o sys_generic.o sys_linux.o wrap_adjtimex.o cmdmon.o manual.o pktlength.o ntp_core.o ntp_io.o ntp_sources.o addrfilt.o clientlog.o keys.o nameserv.o refclock.o refclock_phc.o refclock_pps.o refclock_shm.o refclock_sock.o nameserv_async..o rtc_linux.o -lm -lrt
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c client.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -o chronyc client.o nameserv.o getdate.o cmdparse.o pktlength.o util.o hash_intmd5.o -lm
makeinfo --no-headers --number-sections -o chrony.txt chrony.texi
[ -d /etc ] || mkdir -p /etc
[ -d /etc/chrony/sbin ] || mkdir -p /etc/chrony/sbin
[ -d /etc/chrony/bin ] || mkdir -p /etc/chrony/bin
[ -d /etc/chrony/share/doc/chrony ] || mkdir -p /etc/chrony/share/doc/chrony
[ -d /etc/chrony/share/man/man1 ] || mkdir -p /etc/chrony/share/man/man1
[ -d /etc/chrony/share/man/man5 ] || mkdir -p /etc/chrony/share/man/man5
[ -d /etc/chrony/share/man/man8 ] || mkdir -p /etc/chrony/share/man/man8
[ -d /etc/chrony/share/doc/chrony ] || mkdir -p /etc/chrony/share/doc/chrony
[ -d /var/lib/chrony ] || mkdir -p /var/lib/chrony
if [ -f /etc/chrony/sbin/chronyd ]; then rm -f /etc/chrony/sbin/chronyd ; fi
if [ -f /etc/chrony/bin/chronyc ]; then rm -f /etc/chrony/bin/chronyc ; fi
cp chronyd /etc/chrony/sbin/chronyd
chmod 755 /etc/chrony/sbin/chronyd
cp chronyc /etc/chrony/bin/chronyc
chmod 755 /etc/chrony/bin/chronyc
cp chrony.txt /etc/chrony/share/doc/chrony/chrony.txt
chmod 644 /etc/chrony/share/doc/chrony/chrony.txt
cp COPYING /etc/chrony/share/doc/chrony/COPYING
chmod 644 /etc/chrony/share/doc/chrony/COPYING
cp README /etc/chrony/share/doc/chrony/README
chmod 644 /etc/chrony/share/doc/chrony/README
cp chronyc.1 /etc/chrony/share/man/man1
chmod 644 /etc/chrony/share/man/man1/chronyc.1
cp chronyd.8 /etc/chrony/share/man/man8
chmod 644 /etc/chrony/share/man/man8/chronyd.8
cp chrony.conf.5 /etc/chrony/share/man/man5
chmod 644 /etc/chrony/share/man/man5/chrony.conf.5
-------------------------------------------------------------------------------------------------
Same problem in config.log
docheck.c:
#include <nss.h>
#include <hasht.h>
#include <nsslowhash.h>
int main(int argc, char **argv) {
NSSLOWHASH_Begin(NSSLOWHASH_NewContext(NSSLOW_Init(), HASH_AlgSHA512));
return 0; }
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -I/usr/include/nss -I/usr/include/nspr -o docheck docheck.c -lfreebl3
/usr/bin/ld: cannot find -lfreebl3
collect2: error: ld returned 1 exit status
-------------------------------------------------------------------------------------------------
For information, if I try with libtomcrypt, it's works (but I'm not allowed to use this lib)
root@client-chrony:/tmp# apt-get install libtomcrypt0 libtomcrypt-dev
root@client-chrony:/tmp# sh install.sh
Configuring for Linux-x86_64
Checking for 64-bit time_t : Yes
NTP time mapped to 1965-10-27T22:56:02Z/2101-12-04T05:24:18Z
Checking for math : No
Checking for math in -lm : Yes
Checking for <stdint.h> : Yes
Checking for <inttypes.h> : Yes
Checking for IPv6 support : Yes
Checking for in6_pktinfo : No
Checking for in6_pktinfo with _GNU_SOURCE : Yes
Checking for getaddrinfo() : Yes
Checking for pthread : Yes
Checking for <sys/timepps.h> : No
Checking for <timepps.h> : No
Checking for libcap : No
Checking for <linux/rtc.h> : Yes
Checking for <linux/ptp_clock.h> : Yes
Checking for clock_gettime() : No
Checking for clock_gettime() in -lrt : Yes
Checking for sched_setscheduler() : Yes
Checking for mlockall() : Yes
Checking for editline : No
Checking for readline : No
Checking for readline with -lncurses : No
Checking for NSS : No
Checking for tomcrypt : Yes
Features : +CMDMON +NTP +REFCLOCK +RTC -PRIVDROP -DEBUG -READLINE +ASYNCDNS +IPV6 +SECHASH
Creating Makefile
Creating chrony.conf.5
Creating chrony.texi
Creating chronyc.1
Creating chronyd.8
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c array.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c cmdparse.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c conf.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c local.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c logging.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c main.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c memory.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c mkdirpp.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c reference.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c regress..c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c rtc.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sched.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sources.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sourcestats.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c stubs.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c smooth.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c tempcomp.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c util.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -I/usr/include/tomcrypt -c hash_tomcrypt.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys_generic.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c sys_linux.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c wrap_adjtimex.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c cmdmon.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c manual.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c pktlength.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_core.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_io.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c ntp_sources.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c addrfilt.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c clientlog.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c keys.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c nameserv.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_phc.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_pps.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_shm.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c refclock_sock.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c nameserv_async.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c rtc_linux.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -o chronyd array.o cmdparse.o conf.o local.o logging.o main.o memory.o mkdirpp.o reference.o regress.o rtc.o sched.o sources.o sourcestats.o stubs.o sys.o smooth.o tempcomp.o util.o hash_tomcrypt..o sys_generic.o sys_linux.o wrap_adjtimex.o cmdmon.o manual.o pktlength.o ntp_core.o ntp_io.o ntp_sources.o addrfilt.o clientlog.o keys.o nameserv.o refclock.o refclock_phc.o refclock_pps.o refclock_shm.o refclock_sock.o nameserv_async.o rtc_linux.o -lm -ltomcrypt -lrt
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -I/usr/include/nss -c client.c
gcc -O2 -g -Wmissing-prototypes -Wall -pthread -o chronyc client.o nameserv.o getdate.o cmdparse.o pktlength.o util.o hash_tomcrypt.o -lm -ltomcrypt
makeinfo --no-headers --number-sections -o chrony.txt chrony.texi
[ -d /etc ] || mkdir -p /etc
[ -d /etc/chrony/sbin ] || mkdir -p /etc/chrony/sbin
[ -d /etc/chrony/bin ] || mkdir -p /etc/chrony/bin
[ -d /etc/chrony/share/doc/chrony ] || mkdir -p /etc/chrony/share/doc/chrony
[ -d /etc/chrony/share/man/man1 ] || mkdir -p /etc/chrony/share/man/man1
[ -d /etc/chrony/share/man/man5 ] || mkdir -p /etc/chrony/share/man/man5
[ -d /etc/chrony/share/man/man8 ] || mkdir -p /etc/chrony/share/man/man8
[ -d /etc/chrony/share/doc/chrony ] || mkdir -p /etc/chrony/share/doc/chrony
[ -d /var/lib/chrony ] || mkdir -p /var/lib/chrony
if [ -f /etc/chrony/sbin/chronyd ]; then rm -f /etc/chrony/sbin/chronyd ; fi
if [ -f /etc/chrony/bin/chronyc ]; then rm -f /etc/chrony/bin/chronyc ; fi
cp chronyd /etc/chrony/sbin/chronyd
chmod 755 /etc/chrony/sbin/chronyd
cp chronyc /etc/chrony/bin/chronyc
chmod 755 /etc/chrony/bin/chronyc
cp chrony.txt /etc/chrony/share/doc/chrony/chrony.txt
chmod 644 /etc/chrony/share/doc/chrony/chrony.txt
cp COPYING /etc/chrony/share/doc/chrony/COPYING
chmod 644 /etc/chrony/share/doc/chrony/COPYING
cp README /etc/chrony/share/doc/chrony/README
chmod 644 /etc/chrony/share/doc/chrony/README
cp chronyc.1 /etc/chrony/share/man/man1
chmod 644 /etc/chrony/share/man/man1/chronyc.1
cp chronyd.8 /etc/chrony/share/man/man8
chmod 644 /etc/chrony/share/man/man8/chronyd.8
cp chrony.conf.5 /etc/chrony/share/man/man5
chmod 644 /etc/chrony/share/man/man5/chrony.conf.5
-------------------------------------------------------------------------------------------------
Thanks for your help, this problem is very strange isn't it ?