The compile step of ntp-4.2.0-r2 fails, if cyrus-sasl is installed. It picks up the md5.h file from cyrus instead the one from openssl. if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../include -O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe -Wall -Wcast-qual -Wmissing-prototypes -Wshadow -Wstrict-prototypes -MT md5c.o -MD -MP -MF ".deps/md5c.Tpo" \ -c -o md5c.o `test -f 'md5c.c' || echo './'`md5c.c; \ then mv -f ".deps/md5c.Tpo" ".deps/md5c.Po"; \ else rm -f ".deps/md5c.Tpo"; exit 1; \ fi In file included from ../include/ntp_md5.h:6, from md5c.c:28: /usr/include/md5.h:37: error: syntax error before "caddr_t" make[2]: *** [md5c.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/var/tmp/portage/ntp-4.2.0-r2/work/ntp-4.2.0/libntp' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/ntp-4.2.0-r2/work/ntp-4.2.0' make: *** [all] Error 2 !!! ERROR: net-misc/ntp-4.2.0-r2 failed. !!! Function src_compile, Line 75, Exitcode 2 !!! (no error message) emerge info Portage 2.0.50-r11 (default-x86-1.4, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.8-gentoo-r3) ================================================================= System uname: 2.6.8-gentoo-r3 i686 Intel(R) Pentium(R) 4 CPU 1.80GHz Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /opt/tomcat/conf /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://gentoo.mirrors.pair.com/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/opt/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm arts avi berkdb bitmap-fonts crypt cups encode f77 foomaticdb gdbm gif gpm gtk gtk2 imlib java jpeg kde ldap libg++ libwww mad mikmod motif mpeg ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl slang spell ssl svga tcpd truetype x86 xml2 xmms xprint xv zlib" Reproducible: Always Steps to Reproduce: 1. emerge cyrus-sasl 2. emerge ntp Actual Results: Compile error Expected Results: Successful compile and install.
Created attachment 41735 [details, diff] Patch to fix problem Attached is a patch which forces configure.in and ntp_md5.h to use the openssl md5 files. Not sure, whether this is the right thing to do. It certainly needs a review.
> /usr/include/md5.h:37: error: syntax error before "caddr_t" Which version of cyrus-sasl? The latest x86 stable doesn't install headers in /usr/include. # qpkg -l cyrus-sasl | grep md5.h /usr/include/sasl/md5.h /usr/include/sasl/hmac-md5.h
cyrus-sasl-2.1.19-r1 did for me: campenbergerux:/usr/src# qpkg -l cyrus-sasl | grep md5.h /usr/include/sasl/md5.h /usr/include/sasl/hmac-md5.h /usr/include/md5.h /usr/include/hmac-md5.h
Strange. cyrus-sasl-2.1.19-r1 doesn't install files in /usr/include on mine. I don't know if I can trust `qpkg'. Please post the output of ` grep md5.h /var/db/pkg/dev-libs/cyrus-sasl-2.1.19-r1/CONTENTS` and `emerge cyrus-sasl -pv` # emerge cyrus-sasl -p These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] dev-libs/cyrus-sasl-2.1.19-r1 # grep md5.h /var/db/pkg/dev-libs/cyrus-sasl-2.1.19-r1/CONTENTS obj /usr/include/sasl/md5.h 0da3c2be119a95f7a752dbb507c05aca 1096517282 obj /usr/include/sasl/hmac-md5.h 364c10844e8500e69a20b25ed298fac5 1096517282
Interesting. CONTENTS doesn't contain the /usr/include files campenbergerux:/var/db/pkg/dev-libs/cyrus-sasl-2.1.19-r1# grep md5.h CONTENTS obj /usr/include/sasl/md5.h 0da3c2be119a95f7a752dbb507c05aca 1097608897 obj /usr/include/sasl/hmac-md5.h 364c10844e8500e69a20b25ed298fac5 1097608897 campenbergerux:/var/db/pkg/dev-libs/cyrus-sasl-2.1.19-r1# emerge cyrus-sasl -pv These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild R ] dev-libs/cyrus-sasl-2.1.19-r1 -authdaemond +berkdb -debug +gdbm +java -kerberos +ldap -mysql +pam -postgres +ssl -static 0 kB Total size of downloads: 0 kB
4.2.0.20040617 ignores md5.h now