I was trying to install security/heimdal (Heimdal 1.5.2) from Ports last night and encountered an error. Here's the build text leading up to the error.
I did some digging and experimenting and found that if, after the error, I create a symlink named hdb_asn1.h and point it at hdb_asn1.hx (in the work/heimdal-1.5.2/lib/hdb directory), then the compile will work. I'm hesitant to install the result of this because I'm not sure exactly what file I'm linking, what the initial problem is and how this is fixing the problem.
Has anybody run into this? If so, is this fix going to cause problems for me later? Does anybody know what the initial problem is and why it's causing a compilation error?
The only extra options I'm using in my config are LDAP and SQLITE.
Thank you for any help.
Code:
cc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include -I../../lib/roken -I../../lib/roken -I../asn1 -I./../asn1 -I/usr/local/include -DHDB_DB_DIR=\"/var/db/heimdal\" -I./../krb5 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db46 -I/usr/local/include/db46 -D_LARGE_FILES= -Wall -Wmissing-prototypes -Wpointer-arith -Wbad-function-cast -Wmissing-declarations -Wnested-externs -DINET6 -O2 -pipe -fPIC -I/usr/local/include/db46 -DLDAP_DEPRECATED -fno-strict-aliasing -MT test_dbinfo.o -MD -MP -MF .deps/test_dbinfo.Tpo -c -o test_dbinfo.o test_dbinfo.c
cc -DHAVE_CONFIG_H -I. -I. -I../../include -I../../include -I../../lib/roken -I../../lib/roken -I../asn1 -I./../asn1 -I/usr/local/include -DHDB_DB_DIR=\"/var/db/heimdal\" -I./../krb5 -I/usr/local/include -I/usr/local/include -I/usr/local/include/db46 -I/usr/local/include/db46 -D_LARGE_FILES= -Wall -Wmissing-prototypes -Wpointer-arith -Wbad-function-cast -Wmissing-declarations -Wnested-externs -DINET6 -O2 -pipe -fPIC -I/usr/local/include/db46 -DLDAP_DEPRECATED -fno-strict-aliasing -MT test_hdbkeys.o -MD -MP -MF .deps/test_hdbkeys.Tpo -c -o test_hdbkeys.o test_hdbkeys.c
In file included from ./hdb.h:281,
from hdb_locl.h:64,
from test_dbinfo.c:34:
./hdb-protos.h:151: warning: type defaults to 'int' in declaration of 'HDB_Ext_PKINIT_cert'
./hdb-protos.h:151: error: expected ';', ',' or ')' before '*' token
*** [test_dbinfo.o] Error code 1
In file included from ./hdb.h:281,
from hdb_locl.h:64,
from test_hdbkeys.c:34:
./hdb-protos.h:151: warning: type defaults to 'int' in declaration of 'HDB_Ext_PKINIT_cert'
./hdb-protos.h:151: error: expected ';', ',' or ')' before '*' token
test_hdbkeys.c: In function 'main':
test_hdbkeys.c:57: error: 'hdb_keyset' undeclared (first use in this function)
test_hdbkeys.c:57: error: (Each undeclared identifier is reported only once
test_hdbkeys.c:57: error: for each function it appears in.)
test_hdbkeys.c:57: error: expected ';' before 'keyset'
test_hdbkeys.c:88: error: 'keyset' undeclared (first use in this function)
test_hdbkeys.c:103: warning: implicit declaration of function 'length_hdb_keyset'
test_hdbkeys.c:103: warning: nested extern declaration of 'length_hdb_keyset'
test_hdbkeys.c:103: warning: implicit declaration of function 'encode_hdb_keyset'
test_hdbkeys.c:103: warning: nested extern declaration of 'encode_hdb_keyset'
*** [test_hdbkeys.o] Error code 1
2 errors
*** [all] Error code 2
1 error
*** [all-recursive] Error code 1
1 error
*** [all-recursive] Error code 1
1 error
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** [do-build] Error code 1
Stop in /usr/ports/security/heimdal.
*** [build] Error code 1
Stop in /usr/ports/security/heimdal.
I did some digging and experimenting and found that if, after the error, I create a symlink named hdb_asn1.h and point it at hdb_asn1.hx (in the work/heimdal-1.5.2/lib/hdb directory), then the compile will work. I'm hesitant to install the result of this because I'm not sure exactly what file I'm linking, what the initial problem is and how this is fixing the problem.
Has anybody run into this? If so, is this fix going to cause problems for me later? Does anybody know what the initial problem is and why it's causing a compilation error?
The only extra options I'm using in my config are LDAP and SQLITE.
Thank you for any help.