FYI: dovecot (008632bdfd2c) compilation woes, and minor glitch regarding update-version.sh
trashcan at odo.in-berlin.de
Sat May 9 20:25:48 UTC 2015
Teemu Huovila <teemu.huovila at dovecot.fi> wrote:
> On 04/24/2015 10:00 PM, Michael Grimm wrote:
>> 1) I'm trying to compile a recent hg dovecot version (008632bdfd2c) at a FBSD10-STABLE system without success:
>> fts-tokenizer-generic.c:214:18: error: use of undeclared identifier 'MidNum'
>> if (uint32_find(MidNum, N_ELEMENTS(MidNum), c, &idx))
>> fatal error: too many errors emitted, stopping now [-ferror-limit=]
>> 20 errors generated.
>> Makefile:591: recipe for target 'fts-tokenizer-generic.lo' failed
>> gmake: *** [fts-tokenizer-generic.lo] Error 1
>> gmake: Leaving directory '/usr/local/etc/dovecot/SOURCE/dovecot-2.2/src/lib-fts'
>> 2) I don't have a python binary installed, only a python2 link to the python27 binary (FBSD, and python27 from ports).
>> Thus, update-version.sh will fail to evaluate hg's changeset. As a quick fix I needed to create a link: python -> python2
> Both these are only run if you compile the source from hg, as you did. Official release tar-balls should not have this issue.
> Still, it is not optimal and Ill definitely look into solving 1) when I have time available for that.
> For temporarily solving 1) it is worth noticing the scripts word-break-data.sh and word-boundary-data.sh depend on /bin/bash.
Well that works, although ti's suboptimal because FBSD is more or less bash-free. One, has to install a bash port, and one has to to create a link for /usr/bin/local/bin/bash as /bin/bash. Easy to do, but no perfect solution, when it comes to OS portability, though.
> You could either install bash
That works well.
> or just try if it works if you change it to /bin/sh and use whatever FreeBSD has that pointing to.
That fails because /bin/sh equals /bin/csh at FBSD.
Thanks and with kind regards,
More information about the dovecot