dovecot-2.3 (-git) Warning and Fatal Compile Error

Reuben Farrelly reuben-dovecot at reub.net
Wed Oct 18 06:34:28 EEST 2017


I haven't been tracking dovecot-2.3 until now, but I've just given it a 
quick run, and there are a few things that may need some attention.

Linux x86-64, Gentoo, GCC-7.2.0
Dovecot 2.3 @ commit 32c2612514a404ebc226f32bb88f28d76ceb1db1

Compiled with:

./configure --prefix=/usr --build=x86_64-pc-linux-gnu 
--host=x86_64-pc-linux-gnu --mandir=/usr/share/man 
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc 
--localstatedir=/var/lib --disable-dependency-tracking 
--disable-silent-rules --docdir=/usr/share/doc/dovecot-9999_p20171018 
--htmldir=/usr/share/doc/dovecot-9999_p20171018/html --libdir=/usr/lib64 
--localstatedir=/var --with-moduledir=/usr/lib64/dovecot 
--without-stemmer --disable-rpath --with-icu 
--with-systemdsystemunitdir=/usr/lib/systemd/system 
--enable-maintainer-mode --with-bzlib --without-libcap --without-gssapi 
--without-ldap --with-lucene --with-lz4 --with-lzma --without-mysql 
--with-pam --without-pgsql --without-sqlite --without-solr --with-ssl 
--with-libwrap --without-textcat --without-vpopmail --with-zlib 
--disable-static

Warnings:

(Lots of this one...)

/bin/sh ../../../libtool  --tag=CC   --mode=compile 
x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../.. 
-I../../../src/lib -I../../../src/lib-settings -I../../../src/lib-fts 
-I../../../src/lib-ssl-iostream -I../../../src/lib-http 
-I../../../src/lib-mail -I../../../src/lib-imap -I../../../src/lib-index 
-I../../../src/lib-storage -I../../../src/lib-storage/index 
-I../../../src/doveadm   -std=gnu99 -O0 -g -pipe -march=native 
-mtune=native -ggdb -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wall 
-W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith 
-Wchar-subscripts -Wformat=2 -Wbad-function-cast -fno-builtin-strftime 
-Wstrict-aliasing=2   -c -o fts-user.lo fts-user.c
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. 
-I../../.. -I../../../src/lib -I../../../src/lib-settings 
-I../../../src/lib-fts -I../../../src/lib-ssl-iostream 
-I../../../src/lib-http -I../../../src/lib-mail -I../../../src/lib-imap 
-I../../../src/lib-index -I../../../src/lib-storage 
-I../../../src/lib-storage/index -I../../../src/doveadm -std=gnu99 -O0 
-g -pipe -march=native -mtune=native -ggdb -fstack-protector-strong 
-D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wmissing-declarations 
-Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast 
-fno-builtin-strftime -Wstrict-aliasing=2 -c fts-storage.c  -fPIC -DPIC 
-o .libs/fts-storage.o
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined
<built-in>: note: this is the location of the previous definition
In file included from /usr/include/bits/libc-header-start.h:33:0,
                  from /usr/include/stdlib.h:25,
                  from ../../../src/lib/lib.h:11,
                  from fts-storage.c:3:
/usr/include/features.h:376:4: warning: #warning _FORTIFY_SOURCE 
requires compiling with optimization (-O) [-Wcpp]
  #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
     ^~~~~~~

The build then fails entirely with this:

/bin/sh ../../../libtool  --tag=CC   --mode=compile 
x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../../.. 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-dict 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-dns 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-http 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-mail 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-smtp 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-imap 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-fs 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-charset 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-auth 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-master 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-ssl-iostream 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-compression 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-settings 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-test 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-sasl 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-stats 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-dcrypt 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-program-client 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-index 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage/list 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage/index 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage/index/raw 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-imap-storage 
-I/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/plugins/quota 
  -DMODULEDIR=\""/usr/lib64/dovecot"\"   -O0 -g -pipe -march=native 
-mtune=native -ggdb -c -o realpath.lo realpath.c
edit-mail.c: In function ‘edit_mail_wrap’:
edit-mail.c:235:14: error: too few arguments to function 
‘mailbox_transaction_begin’
   raw_trans = mailbox_transaction_begin(raw_box, 0);
               ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from 
/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage/mail-storage-private.h:7:0,
                  from edit-mail.c:16:
/home/portage/portage/net-mail/dovecot-9999_p20171018/work/dovecot-9999_p20171018/src/lib-storage/mail-storage.h:651:1: 
note: declared here
  mailbox_transaction_begin(struct mailbox *box,
  ^~~~~~~~~~~~~~~~~~~~~~~~~
edit-mail.c: In function ‘edit_mail_set_cache_corrupted’:
edit-mail.c:1662:2: error: too few arguments to function 
‘edmail->wrapped->v.set_cache_corrupted’
   edmail->wrapped->v.set_cache_corrupted(&edmail->wrapped->mail, field);
   ^~~~~~
edit-mail.c: In function ‘edit_mail_set_cache_corrupted_reason’:
edit-mail.c:1671:21: error: ‘struct mail_vfuncs’ has no member named 
‘set_cache_corrupted_reason’; did you mean ‘set_cache_corrupted’?
   edmail->wrapped->v.set_cache_corrupted_reason
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
                      set_cache_corrupted
edit-mail.c: At top level:
edit-mail.c:1701:2: warning: initialization from incompatible pointer 
type [-Wincompatible-pointer-types]
   edit_mail_get_real_mail,
   ^~~~~~~~~~~~~~~~~~~~~~~
edit-mail.c:1701:2: note: (near initialization for 
‘edit_mail_vfuncs.get_backend_mail’)
edit-mail.c:1708:2: warning: initialization from incompatible pointer 
type [-Wincompatible-pointer-types]
   edit_mail_set_cache_corrupted,
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
edit-mail.c:1708:2: note: (near initialization for 
‘edit_mail_vfuncs.set_cache_corrupted’)
edit-mail.c:1710:2: warning: excess elements in struct initializer
   edit_mail_set_cache_corrupted_reason
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
edit-mail.c:1710:2: note: (near initialization for ‘edit_mail_vfuncs’)
make[4]: *** [Makefile:481: edit-mail.lo] Error 1
make[4]: *** Waiting for unfinished jobs....

Reuben



More information about the dovecot mailing list