When building cross linux from scratch ncurses 5.9 does fail to compile with: gcc -DHAVE_CONFIG_H -I../ncurses -I. -D_GNU_SOURCE -DNDEBUG -I. -I../include -I/foo/include/ncurses -O2 --param max-inline-insns-single=1200 -c ../ncurses/lib_gen.c -o ../objects/lib_gen.o In file included from ../ncurses/curses.priv.h:283, from ../ncurses/lib_gen.c:19: _823.c:835:15: error: expected ‘)’ before ‘int’ ../include/curses.h:1594:56: note: in definition of macro ‘mouse_trafo’ #define mouse_trafo(y,x,to_screen) wmouse_trafo(stdscr,y,x,to_screen) ^ make[1]: *** [Makefile:785: ../objects/lib_gen.o] Error 1 make[1]: Leaving directory '/tmp/ncurses-5.9/ncurses' make: *** [Makefile:111: all] Error 2 Use ncurses 6.1 instead.