Dovecot 2.3.15 compilation fails
Hello Dovecot users and developers!
Up to Dovecot 2.3.14.1 manual compilation of Dovecot sources was fine, I have an old 32-bit Linux server with GCC 4.4.7 where I compile almost all things manually. Works fine, never had problems with GCC versions.
env LDFLAGS="-Wl,--no-as-needed" ./configure --prefix=/usr/local/dovecot --with-ssl=openssl --with-ssldir=/usr/local/dovecot/etc/dovecot/certs make
Unfortunately, Dovecot 2.3.15 fails to compile at test-smtp-params.c (works with a recent GCC 11.1.1 on my desktop, but servers usually come with older stuff). I know a little bit of programming but that's above my head what goes wrong here and how I could fix it to continue (so I don't know if that's the only problem or if there will be more).
See below (at the end) for the exact error message.
I assume this compilation issue was not an intentional change/requirement between 2.3.14(.1) and 2.3.15, it just happened.
I don't think that the problem is in "test-smtp-params.c" itself but some declarations somewhere else are missing, but I'm no expert here. There were too many changes in the src/lib-smtp source tree to understand what may have caused this (or maybe it's even somewhere else).
Any help is highly appreciated. I'd be happy to help and try out any ideas or patches. I'd like to see that Dovecot can be compiled on as many platforms as possible, as long as there are no fundamental requirements making this impossible.
Thanks a lot in advance and keep up the good work, Andreas
[last lines of compilation process when error happens]
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-test -I../../src/lib-settings -I../../src/lib-master -I../../src/lib-sasl -I../../src/lib-ssl-iostream -I../../src/lib-dns -I../../src/lib-program-client -I../../src/lib-mail -DTEST_BIN_DIR=\"/usr/local/src/dovecot-2.3.15/src/lib-smtp/test-bin\" -std=gnu99 -g -O2 -fstack-protector -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -mfunction-return=keep -mindirect-branch=keep -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -fno-builtin-strftime -Wstrict-aliasing=2 -I/usr/local/OpenSSL-1.1.1/include -MT test-smtp-params.o -MD -MP -MF .deps/test-smtp-params.Tpo -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/local/src/dovecot-2.3.15/src/lib-smtp' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory
/usr/local/src/dovecot-2.3.15/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/dovecot-2.3.15'
make: *** [all] Error 2
Am 27.06.2021 um 13:38 schrieb Andreas M. Kirchwitz:
Hello Dovecot users and developers!
Up to Dovecot 2.3.14.1 manual compilation of Dovecot sources was fine, I have an old 32-bit Linux server with GCC 4.4.7 where I compile almost all things manually. Works fine, never had problems with GCC versions.
GCC 4.4.7: This particular version sounds quite familiar to me. Are you trying to compile Dovecot 2.3.15 on RHEL 6 (or a clone) because that's the default GCC version on any EL6 based-distribution?!
If so, there are newer GCC versions available via the devtoolsets provided by the CentOS SCLO repository (x64 only) or i686 rebuilds provided by various others like CloudLinux, CERN/ScientificLinux etc...
On 2021-06-27 15:53, Michael Seevogel wrote:
GCC 4.4.7: This particular version sounds quite familiar to me. Are you trying to compile Dovecot 2.3.15 on RHEL 6 (or a clone) because that's the default GCC version on any EL6 based-distribution?!
If so, there are newer GCC versions available via the devtoolsets provided by the CentOS SCLO repository (x64 only) or i686 rebuilds provided by various others like CloudLinux, CERN/ScientificLinux etc...
+1
https://packages.gentoo.org/packages/sys-devel/gcc
why is redhat so much behind ?, is it backports versioning ?
i gave up with redhat when Fedora came out
https://www.redhat.com/en/topics/linux/fedora-vs-red-hat-enterprise-linux
On 27 Jun 2021, at 05:38, Andreas M. Kirchwitz amk@krell.zikzak.de wrote:
Dovecot 2.3.15
On FreeBSD 13.0 I am seeing that my installed version, 2.3.13_1 is the newest dovecot.
I've been checking since I have some CVEs on that version, but no update yet.
Any timeline for FreeBSD
-- 'When you've been a wizard as long as I have, my boy, you'll learn that as soon as you find anything that offers amazing possibilities for the improvement of the human condition, it's best to put the lid back on and pretend it never happened.' --The Last Continent
On 2021-06-29, @lbutlr kremels@kreme.com wrote:
On 27 Jun 2021, at 05:38, Andreas M. Kirchwitz amk@krell.zikzak.de wrote:
Dovecot 2.3.15
On FreeBSD 13.0 I am seeing that my installed version, 2.3.13_1 is the newest dovecot.
I've been checking since I have some CVEs on that version, but no update yet.
Any timeline for FreeBSD
That would be a question for the FreeBSD port maintainer.
On Tue, Jun 29, 2021 at 12:52:35PM -0000, Stuart Henderson wrote:
On 2021-06-29, @lbutlr
wrote: On 27 Jun 2021, at 05:38, Andreas M. Kirchwitz
wrote: Dovecot 2.3.15
On FreeBSD 13.0 I am seeing that my installed version, 2.3.13_1 is the newest dovecot.
I've been checking since I have some CVEs on that version, but no update yet.
Any timeline for FreeBSD
That would be a question for the FreeBSD port maintainer.
I asked the maintainer. I still await a reply. -- Member - Liberal International This is doctor@@nl2k.ab.ca Ici doctor@@nl2k.ab.ca Yahweh, Queen & country!Never Satan President Republic!Beware AntiChrist rising! Look at Psalms 14 and 53 on Atheism https://www.empire.kred/ROOTNK?t=94a1f39b Instant perfection is the enemy of the real thing. -unknown Beware https://mindspring.com
On Jun 29, 2021, at 6:29 AM, The Doctor
wrote: On Tue, Jun 29, 2021 at 12:52:35PM -0000, Stuart Henderson wrote:
On 2021-06-29, @lbutlr
wrote: On 27 Jun 2021, at 05:38, Andreas M. Kirchwitz
wrote: Dovecot 2.3.15
On FreeBSD 13.0 I am seeing that my installed version, 2.3.13_1 is the newest dovecot.
I've been checking since I have some CVEs on that version, but no update yet.
Any timeline for FreeBSD
That would be a question for the FreeBSD port maintainer.
I asked the maintainer.
I still await a reply.
-- Member - Liberal International This is doctor@@nl2k.ab.ca Ici doctor@@nl2k.ab.ca Yahweh, Queen & country!Never Satan President Republic!Beware AntiChrist rising! Look at Psalms 14 and 53 on Atheism https://www.empire.kred/ROOTNK?t=94a1f39b Instant perfection is the enemy of the real thing. -unknown Beware https://mindspring.com
I don’t know what happened to the normally deft maintainer but someone has recently stepped in to correct this. Take a look at the following bug report with an embedded link to review the progress: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254007 -virgil
participants (7)
-
@lbutlr
-
Andreas M. Kirchwitz
-
Benny Pedersen
-
Michael Seevogel
-
Stuart Henderson
-
The Doctor
-
Virgil Champlin