NetBSD Problem Report #59603

From he@smistad.uninett.no  Tue Aug 19 09:28:24 2025
Return-Path: <he@smistad.uninett.no>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (2048 bits)
	 client-signature RSA-PSS (2048 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id D433E1A923A
	for <gnats-bugs@gnats.NetBSD.org>; Tue, 19 Aug 2025 09:28:24 +0000 (UTC)
Message-Id: <20250819092819.44C2C43F267@smistad.uninett.no>
Date: Tue, 19 Aug 2025 11:28:19 +0200 (CEST)
From: he@NetBSD.org
Reply-To: he@NetBSD.org
To: gnats-bugs@NetBSD.org
Subject: Combining pkgsrc heimdal and local-build of BIND 9.18.36 fails
X-Send-Pr-Version: 3.95

>Number:         59603
>Category:       pkg
>Synopsis:       Combining pkgsrc heimdal and local-build of BIND 9.18.36 fails
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Aug 19 09:30:00 +0000 2025
>Originator:     he@NetBSD.org
>Release:        NetBSD 9.3
>Organization:
I try...
>Environment:
System: NetBSD xxxxxxxx 9.3 NetBSD 9.3 (GENERIC) #0: Thu Aug  4 15:30:37 UTC 2022  mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
	Installing emacs brings in emacs29, which again pulls in
	heimdal from pkgsrc (via libcups).

	However, trying to build BIND 9.18.36 from source while the
	pkgsrc heimdal is installed fails with

  CC       libdns_la-gssapictx.lo
In file included from gssapictx.c:34:0:
/usr/pkg/include/krb5/krb5.h:42:10: fatal error: krb5-types.h: No such file or directory
 #include <krb5-types.h>
          ^~~~~~~~~~~~~~
compilation terminated.
*** Error code 1

	It looks like the pkgsrc heimdal makes assumptions about what
	include paths have been specified:

$ pkg_info -L heimdal | grep krb5-types
/usr/pkg/include/krb5/krb5-types.h
$ 

	which indicates that -I/usr/pkg/include/krb5 is assumed,
	which BIND rather obviously does not do.

	I'd suggest that that assumption should not be made.

	It looks like this isn't the only include directive
	which is making this assumption:

$ cd /usr/pkg/include/krb5
$ grep #include *
asn1-common.h:#include <stddef.h>
asn1-common.h:#include <time.h>
asn1-common.h:#include <krb5-types.h>
cms_asn1.h:#include <stddef.h>
cms_asn1.h:#include <time.h>
cms_asn1.h:#include <rfc2459_asn1.h>
cms_asn1.h:#include <heim_asn1.h>
com_err.h:#include <com_right.h>
com_err.h:#include <stdarg.h>
com_right.h:#include <stdarg.h>
com_right.h:#include <stddef.h>
crmf_asn1.h:#include <stddef.h>
crmf_asn1.h:#include <time.h>
crmf_asn1.h:#include <rfc2459_asn1.h>
crmf_asn1.h:#include <heim_asn1.h>
der-private.h:#include <stdarg.h>
der-protos.h:#include <stdarg.h>
der.h:#include <stdint.h>
der.h:#include <der-protos.h>
digest_asn1.h:#include <stddef.h>
digest_asn1.h:#include <time.h>
digest_asn1.h:#include <krb5_asn1.h>
getarg.h:#include <stddef.h>
gssapi.h:#include <gssapi/gssapi.h>
hdb-protos.h:#include <stdarg.h>
hdb.h:#include <stdio.h>
hdb.h:#include <krb5.h>
hdb.h:#include <hdb_err.h>
hdb.h:#include <heim_asn1.h>
hdb.h:#include <hdb_asn1.h>
hdb.h:#include <hdb-protos.h>
hdb_asn1.h:#include <stddef.h>
hdb_asn1.h:#include <time.h>
hdb_asn1.h:#include <krb5_asn1.h>
heim-ipc.h:#include <asn1-common.h>
heimbase.h:#include <sys/types.h>
heimbase.h:#include <pthread.h>
heimbase.h:#include <krb5-types.h>
heimbase.h:#include <stdarg.h>
heimbase.h:#include <stdbool.h>
heimntlm-protos.h:#include <stdarg.h>
heimntlm.h:#include <ntlm_err.h>
heimntlm.h:#include <heimntlm-protos.h>
hx509-protos.h:#include <stdarg.h>
hx509.h:#include <rfc2459_asn1.h>
hx509.h:#include <stdarg.h>
hx509.h:#include <stdio.h>
hx509.h:#include <heimbase.h>
hx509.h:#include <hx509-protos.h>
hx509.h:#include <hx509_err.h>
kdc-protos.h:#include <stdarg.h>
kdc.h:#include <hdb.h>
kdc.h:#include <krb5.h>
kdc.h:#include <kdc-protos.h>
krb5-protos.h:#include <stdarg.h>
krb5-types.h:#include <inttypes.h>
krb5-types.h:#include <sys/types.h>
krb5-types.h:#include <sys/socket.h>
krb5-types.h:#include <unistd.h>
krb5.h:#include <time.h>
krb5.h:#include <krb5-types.h>
krb5.h:#include <asn1_err.h>
krb5.h:#include <krb5_err.h>
krb5.h:#include <heim_err.h>
krb5.h:#include <k524_err.h>
krb5.h:#include <krb5_asn1.h>
krb5.h:#include <krb5-protos.h>
krb5_asn1.h:#include <stddef.h>
krb5_asn1.h:#include <time.h>
krb5_ccapi.h:#include <krb5-types.h>
kx509_asn1.h:#include <stddef.h>
kx509_asn1.h:#include <time.h>
ocsp_asn1.h:#include <stddef.h>
ocsp_asn1.h:#include <time.h>
ocsp_asn1.h:#include <rfc2459_asn1.h>
otp.h:#include <stdlib.h>
otp.h:#include <time.h>
parse_units.h:#include <stdio.h>
parse_units.h:#include <stddef.h>
pkcs10_asn1.h:#include <stddef.h>
pkcs10_asn1.h:#include <time.h>
pkcs10_asn1.h:#include <rfc2459_asn1.h>
pkcs12_asn1.h:#include <stddef.h>
pkcs12_asn1.h:#include <time.h>
pkcs12_asn1.h:#include <cms_asn1.h>
pkcs12_asn1.h:#include <rfc2459_asn1.h>
pkcs12_asn1.h:#include <heim_asn1.h>
pkcs8_asn1.h:#include <stddef.h>
pkcs8_asn1.h:#include <time.h>
pkcs8_asn1.h:#include <rfc2459_asn1.h>
pkcs8_asn1.h:#include <heim_asn1.h>
pkcs9_asn1.h:#include <stddef.h>
pkcs9_asn1.h:#include <time.h>
pkinit_asn1.h:#include <stddef.h>
pkinit_asn1.h:#include <time.h>
pkinit_asn1.h:#include <krb5_asn1.h>
pkinit_asn1.h:#include <cms_asn1.h>
pkinit_asn1.h:#include <rfc2459_asn1.h>
pkinit_asn1.h:#include <heim_asn1.h>
rfc2459_asn1.h:#include <stddef.h>
rfc2459_asn1.h:#include <time.h>
rfc2459_asn1.h:#include <heim_asn1.h>
roken.h:#include <stdio.h>
roken.h:#include <stdlib.h>
roken.h:#include <stdarg.h>
roken.h:#include <stdint.h>
roken.h:#include <string.h>
roken.h:#include <limits.h>
roken.h:#include <signal.h>
roken.h:#include <sys/param.h>
roken.h:#include <inttypes.h>
roken.h:#include <sys/types.h>
roken.h:#include <sys/errno.h>
roken.h:#include <unistd.h>
roken.h:#include <sys/socket.h>
roken.h:#include <sys/uio.h>
roken.h:#include <grp.h>
roken.h:#include <sys/stat.h>
roken.h:#include <netinet/in.h>
roken.h:#include <arpa/inet.h>
roken.h:#include <netdb.h>
roken.h:#include <arpa/nameser.h>
roken.h:#include <resolv.h>
roken.h:#include <syslog.h>
roken.h:#include <fcntl.h>
roken.h:#include <errno.h>
roken.h:#include <err.h>
roken.h:#include <termios.h>
roken.h:#include <sys/ioctl.h>
roken.h:#include <sys/time.h>
roken.h:#include <time.h>
roken.h:#include <paths.h>
roken.h:#include <dirent.h>
roken.h:#include <roken-common.h>
roken.h:#include <pwd.h>
wind.h:#include <stddef.h>
wind.h:#include <krb5-types.h>
wind.h:#include <wind_err.h>
xdbm.h:#include <db.h>
xdbm.h:#include <gdbm/ndbm.h>
xdbm.h:#include <ndbm.h>
$

>How-To-Repeat:
	Have heimdal-7.8.0nb13 from pkgsrc installed.
	Try to build BIND 9.18.36 from source locally, watch it fail.

>Fix:
	Not a fix, but a workaround: temporarily de-install heimdal
	(and emacs), reconfigure and build BIND, and re-install
	emacs from pkgsrc (and therefore heimdal from pkgsrc).

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2025 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.