On 28.09.2018 13:44, Aki Tuomi wrote:
On 28.09.2018 12:38, James wrote:
On 27/09/2018 16:14, Sami Ketola wrote:
It was studio cc. gcc doesn't make it through configure and I didn't ask why. Can you share a little bit more info on how did the compile (or configure even) fail with gcc on Solaris 11?
$ ./configure $ARGS ... checking Linux compatible mremap()... no checking whether shared mmaps get updated by write()s... no checking whether fd passing works... no configure: error: fd passing is required for Dovecot to work
Which in the log corresponds to:
configure:22685: ./conftest ./configure[2026]: eval: line 1: 22335: Memory fault(coredump)
Appears to the option "-mfunction-return=thunk" that cause the problem, remove and no core dump. Older gccs do not have -mfunction-return.
as I have no problems in compiling dovecot and pigeonhole on my Solaris 11.3 system with gcc. The version that ships with my Solaris is 4.5.2. Strictly speaking Solaris 11 does not ship with gcc, one can install it [from the OS vendor] with pkg and there is a choice of versions.
# pkg list -a | grep gcc-c
I have gcc versions installed: 4.9.5, 5.5.0, 6.4.0, 7.3.0 and 8.2.0.
I also have Sun Studio 12.5 installed but I have not even tried to compile dovecot wit that yet. Current Release - Oracle Developer Studio 12.6.
James. Appears we need more thoroughly ensure -mfunction-return=thunk actually works.
Aki
You can use --disable-harderning to disable these things.
Aki