0.6.1. does not compile under Cygwin. Full build log in attachment.
(...) In file included from list.c:15:0: database.h:64:12: warning: inline function 'field_id' declared but never defined inline int field_id(int i); ^ mv -f .deps/list.Tpo .deps/list.Po gcc -DHAVE_CONFIG_H -I. -I/usr/include/ncursesw -Wall -g -O2 -MT mbswidth.o -MD -MP -MF .deps/mbswidth.Tpo -c -o mbswidth.o mbswidth.c mbswidth.c:66:5: error: conflicting types for 'wcwidth' int wcwidth (); ^ mbswidth.c:66:1: note: an argument type that has a default promotion can't match an empty parameter name list declaration int wcwidth (); ^ In file included from /usr/include/stdlib.h:11:0, from mbswidth.c:33: /usr/include/wchar.h:130:5: note: previous declaration of 'wcwidth' was here int _EXFUN(wcwidth, (const wchar_t)); ^
Could you please post whether ./configure set
HAVE_DECL_WCWIDTH
to 1 or 0 inside config.h?If, most probably, it sets it to 0, then it's wrong since it should have detected the one from your version of
/usr/include/stdlib.h
and thus not have a conflicting declaration.I'd say check your
./configure
exited successfully, and post the lines relatde towcwidth
Last edit: Raphaël 2016-06-12
I ran:
... automake (GNU automake) 1.14.1
... autoconf (GNU Autoconf) 2.69
$ uname -m
x86_64
$ rm configure
$ automake --add-missing
$ autoconf -f -i
few warnings:
configure.ac:13: warning: The 'AM_PROG_MKDIR_P' macro is deprecated, and its use is discouraged.
configure.ac:13: You should use the Autoconf-provided 'AC_PROG_MKDIR_P' macro instead,
configure.ac:13: and use '$(MKDIR_P)' instead of '$(mkdir_p)'in your Makefile.am files.
results:
Output of configure and result of configure.log file attached.
There is still trouble even if manually set:
Some -lLIBRARY is missing from the chain? Compile log attached.
Found similar problem from Debian, if I set manually
config.h: HAVE_DECL_WCWIDTH 1
And build with
CFLAGS = -std=gnu89
the build succeeds. Please add these fixes to the original sources.
Ref: https://sourceforge.net/p/abook/patches/6/
Last edit: Jari Aalto 2016-06-12
One more thing. Please update the GNU automake in the sources by running:
autoreconf --install --force --verbose