A wild shot in the dark: are you missing the git command, but are trying to build from a git checkout?
Because I do get this error message when I do that:
build % ../configure
[…]
../configure: line 3394: git: command not found
../configure: line 3395: git: command not found
../configure: line 3395: git: command not found
../configure: line 3395: git: command not found
[…]
build configured:
i3 version: (, branch "")
is release version: yes
[…]
In file included from ../../i3/src/ipc.c:12:0:
../../i3/src/ipc.c: In function 'handle_get_version':
../../i3/include/yajl_utils.h:19:50: error: expected _expression_ before ')' token
#define y(x, ...) yajl_gen_##x(gen, ##__VA_ARGS__)
^
../../i3/src/ipc.c:1002:5: note: in expansion of macro 'y'
y(integer, MAJOR_VERSION);
^
../../i3/include/yajl_utils.h:19:50: error: expected _expression_ before ')' token
#define y(x, ...) yajl_gen_##x(gen, ##__VA_ARGS__)
^
../../i3/src/ipc.c:1005:5: note: in expansion of macro 'y'
y(integer, MINOR_VERSION);
^
You’re seeing this error because without git, the version cannot be determined.
Release tarballs of i3 (which is what is packaged in Debian) should not invoke git, but instead rely on the contents of the I3_VERSION file.