Hi! I'm trying to use dovecot-1.1.5 with Berkley DB 4.6.21 on OpenBSD. While compiling I get this: gcc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-sql \ -DPKG_RUNDIR=\""/var/run/dovecot"\" -I/usr/local/include -std=gnu99\ -g -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations \ -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast \ -fstack-protector -MT dict-db.o -MD -MP -MF .deps/dict-db.Tpo -c -o \ dict-db.o dict-db.c dict-db.c:15: error: syntax error before "DB_ENV" dict-db.c:24: error: syntax error before "DBC" dict-db.c:39: error: syntax error before numeric constant dict-db.c: In function `db_dict_init': dict-db.c:69: error: `tid' undeclared (first use in this function) dict-db.c:69: error: (Each undeclared identifier is reported only once dict-db.c:69: error: for each function it appears in.) dict-db.c:79: warning: implicit declaration of function `db_env_create' dict-db.c:79: error: structure has no member named `db_env' dict-db.c:81: warning: implicit declaration of function `db_strerror' dict-db.c:81: warning: format argument is not a pointer (arg 2) dict-db.c:86: error: structure has no member named `db_env' dict-db.c:86: error: structure has no member named `db_env' dict-db.c:86: error: `stderr' undeclared (first use in this function) dict-db.c:87: error: structure has no member named `db_env' dict-db.c:87: error: structure has no member named `db_env' dict-db.c:93: error: structure has no member named `db_env' dict-db.c:93: error: structure has no member named `db_env' dict-db.c:93: error: `DB_CREATE' undeclared (first use in this function) dict-db.c:94: error: `DB_INIT_MPOOL' undeclared (first use in this function) dict-db.c:94: error: `DB_INIT_TXN' undeclared (first use in this function) dict-db.c:100: error: structure has no member named `db_env' dict-db.c:100: error: structure has no member named `db_env' dict-db.c:107: warning: implicit declaration of function `db_create' dict-db.c:107: error: structure has no member named `db_env' dict-db.c:109: warning: format argument is not a pointer (arg 2) dict-db.c:113: error: structure has no member named `set_errfile' dict-db.c:114: error: structure has no member named `set_errpfx' dict-db.c:116: error: structure has no member named `db_env' dict-db.c:118: warning: format argument is not a pointer (arg 2) dict-db.c:122: error: structure has no member named `set_errfile' dict-db.c:123: error: structure has no member named `set_errpfx' dict-db.c:125: error: structure has no member named `open' dict-db.c:131: error: structure has no member named `set_flags' dict-db.c:131: error: `DB_DUP' undeclared (first use in this function) dict-db.c:141: error: structure has no member named `set_bt_compare' dict-db.c:148: error: structure has no member named `open' dict-db.c:154: error: structure has no member named `associate' dict-db.c: In function `db_dict_deinit': dict-db.c:168: error: too many arguments to function dict-db.c:170: error: too many arguments to function dict-db.c: In function `db_dict_iterate_set': dict-db.c:180: error: `DB_NOTFOUND' undeclared (first use in this function) dict-db.c: In function `db_dict_lookup': dict-db.c:218: warning: passing arg 4 of pointer to function makes integer from pointer without a cast dict-db.c:218: error: too many arguments to function dict-db.c:219: error: `DB_NOTFOUND' undeclared (first use in this function) dict-db.c: In function `db_dict_iterate_next': dict-db.c:250: error: structure has no member named `cursor' dict-db.c:250: error: structure has no member named `cursor' dict-db.c:252: error: `DB_NEXT' undeclared (first use in this function) dict-db.c:262: error: structure has no member named `cursor' dict-db.c:262: error: structure has no member named `cursor' dict-db.c: In function `db_dict_iterate_first': dict-db.c:285: error: structure has no member named `cursor' dict-db.c:285: error: structure has no member named `cursor' dict-db.c:287: error: structure has no member named `cursor' dict-db.c:287: error: structure has no member named `cursor' dict-db.c:292: error: structure has no member named `cursor' dict-db.c:292: error: structure has no member named `cursor' dict-db.c:293: error: `DB_SET_RANGE' undeclared (first use in this function) dict-db.c: In function `db_dict_iterate_init': dict-db.c:311: error: structure has no member named `cursor' dict-db.c: In function `db_dict_iterate_deinit': dict-db.c:335: error: structure has no member named `cursor' dict-db.c:335: error: structure has no member named `cursor' dict-db.c: In function `db_dict_transaction_init': dict-db.c:349: error: structure has no member named `db_env' dict-db.c:349: error: structure has no member named `db_env' dict-db.c:349: error: structure has no member named `tid' dict-db.c: In function `db_dict_transaction_commit': dict-db.c:360: error: structure has no member named `tid' dict-db.c:360: error: structure has no member named `tid' dict-db.c: In function `db_dict_transaction_rollback': dict-db.c:370: error: structure has no member named `tid' dict-db.c:370: error: structure has no member named `tid' dict-db.c: In function `db_dict_set': dict-db.c:398: error: structure has no member named `tid' dict-db.c:398: warning: passing arg 4 of pointer to function makes integer from pointer without a cast dict-db.c:398: error: too many arguments to function dict-db.c: In function `db_dict_unset': dict-db.c:413: error: structure has no member named `tid' dict-db.c:413: warning: passing arg 3 of pointer to function makes integer from pointer without a cast dict-db.c:413: error: too many arguments to function *** Error code 1 Stop in /home/daniell/dovecot/dovecot-1.1.5/src/lib-dict (line 92 of /usr/share/mk/sys.mk). *** Error code 1 Stop in /home/daniell/dovecot/dovecot-1.1.5/src (line 300 of Makefile). *** Error code 1 Stop in /home/daniell/dovecot/dovecot-1.1.5 (line 404 of Makefile). *** Error code 1 Stop in /home/daniell/dovecot/dovecot-1.1.5 (line 257 of Makefile). My intention is to configure the expire plugin with a db: backend, but I got stuck with this? Anyone have a clue? Thanks! Daniel -- LEVAI Daniel PGP key ID = 0x4AC0A4B1 Key fingerprint = D037 03B9 C12D D338 4412 2D83 1373 917A 4AC0 A4B1
On Sat, 2008-10-25 at 09:22 +0200, L?VAI D?niel wrote:> Hi! > > I'm trying to use dovecot-1.1.5 with Berkley DB 4.6.21 on OpenBSD.It compiles fine on Debian with bdb 4.7.25.2, but I think it should work fine with older versions too.> While compiling I get this: > > gcc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-sql \ > -DPKG_RUNDIR=\""/var/run/dovecot"\" -I/usr/local/include -std=gnu99\ > -g -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations \ > -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast \ > -fstack-protector -MT dict-db.o -MD -MP -MF .deps/dict-db.Tpo -c -o \ > dict-db.o dict-db.c > dict-db.c:15: error: syntax error before "DB_ENV"My guess is that #include <db.h> includes wrong file. Try to find out the correct file and try putting the full path there. I don't have OpenBSD installed so I can't really test this myself. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20081025/cced3d03/attachment-0002.bin>
On Saturday 25 October 2008 14.59.00 Timo Sirainen wrote:> On Sat, 2008-10-25 at 09:22 +0200, L?VAI D?niel wrote: > > Hi! > > > > I'm trying to use dovecot-1.1.5 with Berkley DB 4.6.21 on OpenBSD. > > It compiles fine on Debian with bdb 4.7.25.2, but I think it should > work fine with older versions too. > > > While compiling I get this: > > > > gcc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib > > -I../../src/lib-sql \ -DPKG_RUNDIR=\""/var/run/dovecot"\" > > -I/usr/local/include -std=gnu99\ -g -O2 -Wall -W > > -Wmissing-prototypes -Wmissing-declarations \ -Wpointer-arith > > -Wchar-subscripts -Wformat=2 -Wbad-function-cast \ > > -fstack-protector -MT dict-db.o -MD -MP -MF .deps/dict-db.Tpo -c -o > > \ dict-db.o dict-db.c > > dict-db.c:15: error: syntax error before "DB_ENV" > > My guess is that #include <db.h> includes wrong file. Try to find out > the correct file and try putting the full path there. I don't have > OpenBSD installed so I can't really test this myself.That is correct. I had to include another directory in CPPFLAGS: CPPFLAGS+="-I/usr/local/include/db4" Great and fast assistance, as usual! :) Thank you very much! Daniel -- LEVAI Daniel PGP key ID = 0x4AC0A4B1 Key fingerprint = D037 03B9 C12D D338 4412 2D83 1373 917A 4AC0 A4B1