Hello.
So far I have successfully built Dovecot until v2.3.14 on Centos 4-6 (yes I know, they are old, but as they are remote servers, distros can't upgraded), and sometimes I have also met compilation issues, but after highlighting them, Timo have fixed the code.
Found from similar thread (Dovecot 2.3.15 compilation fails https://dovecot.org/list/dovecot/2021-June/122412.html ) that new GCC is needed. However I can't find such requirement in v2.3.15 change log.
As seems that I'm not the only one with compilation issues, then @Timo - can You please fix the code so that also v2.3.15 can compiled on older distros?
Compilation options: ./configure --prefix=/usr --with-ssl=openssl --with-ssldir=/etc/ssl --sysconfdir=/etc --with-pam --without-bsdauth --without-sql --without-nss --without-ldap --without-pgsql --without-mysql --without-sqlite --with-rundir=/var/run/dovecot --without-cassandra --without-lucene --without-solr --without-textcat --without-libcap --without-stemmer --disable-rpath --disable-dependency-tracking --disable-silent-rules --without-gssapi --without-cdb
Compilation error:
builtin-strftime -c -o test-smtp-params.o test-smtp-params.c
test-smtp-params.c:29: error: unknown field data' specified in initializer test-smtp-params.c:29: warning: missing braces around initializer test-smtp-params.c:29: warning: (near initialization for
test_params_buffer1.<anonymous>')
test-smtp-params.c:30: warning: missing initializer
test-smtp-params.c:30: warning: (near initialization for test_params_buffer1.<anonymous>.<anonymous>.used') test-smtp-params.c:30: error: unknown field
used' specified in initializer
test-smtp-params.c:31: warning: excess elements in struct initializer
test-smtp-params.c:31: warning: (near initialization for test_params_buffer1') test-smtp-params.c:33: error: unknown field
data' specified in initializer
test-smtp-params.c:33: warning: missing braces around initializer
test-smtp-params.c:33: warning: (near initialization for test_params_buffer2.<anonymous>') test-smtp-params.c:34: warning: missing initializer test-smtp-params.c:34: warning: (near initialization for
test_params_buffer2.<anonymous>.<anonymous>.used')
test-smtp-params.c:34: error: unknown field used' specified in initializer test-smtp-params.c:35: warning: excess elements in struct initializer test-smtp-params.c:35: warning: (near initialization for
test_params_buffer2')
make[3]: *** [test-smtp-params.o] Error 1
make[3]: Leaving directory /usr/src/redhat/BUILD/dovecot-2.3.15/src/lib-smtp' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory
/usr/src/redhat/BUILD/dovecot-2.3.15/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/dovecot-2.3.15'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.7364 (%build)
-- Mart