FYI: dovecot (008632bdfd2c) compilation woes, and minor glitch regarding update-version.sh

Teemu Huovila teemu.huovila at dovecot.fi
Mon May 4 13:27:46 UTC 2015


On 04/24/2015 10:00 PM, Michael Grimm wrote:
> Hi —
> 
> 1) I'm trying to compile a recent hg dovecot version (008632bdfd2c) at a FBSD10-STABLE system without success:
> 
> libtool: compile:  cc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-test -I/usr/local/include -DUDHRDIR=\"../../src/lib-fts\" -DDATADIR=\"/usr/local/share/dovecot\" -DTEST_STOPWORDS_DIR=\"../../src/lib-fts\" -I/usr/local/include -std=gnu99 -O2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2 -I/usr/local/include -MT fts-tokenizer-generic.lo -MD -MP -MF .deps/fts-tokenizer-generic.Tpo -c fts-tokenizer-generic.c  -fPIC -DPIC -o .libs/fts-tokenizer-generic.o
> fts-tokenizer-generic.c:111:18: error: use of undeclared identifier 'White_Space'
>         if (uint32_find(White_Space, N_ELEMENTS(White_Space), c, &idx))
>                         ^
> fts-tokenizer-generic.c:113:18: error: use of undeclared identifier 'Dash'
>         if (uint32_find(Dash, N_ELEMENTS(Dash), c, &idx))
>                         ^
> […]
> 
> fts-tokenizer-generic.c:212:18: error: use of undeclared identifier 'MidLetter'
>         if (uint32_find(MidLetter, N_ELEMENTS(MidLetter), c, &idx))
>                         ^
> 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[4]: *** [fts-tokenizer-generic.lo] Error 1
> gmake[4]: 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.
You could either install bash or just try if it works if you change it to /bin/sh and use whatever FreeBSD has that pointing to.

br,
Teemu Huovila



More information about the dovecot mailing list