If you are having problems compiling check_funs.cpp than the most likely reason is due to incompatibilities with the curses implementation on your system. If this is the case than you can explicitly disable the curses library with --disable-curses. By doing this you will lose the nice full screen interface but hopefully you will be able to at least get Aspell to compile correctly.
If the curses library is installed in a non-standard location than you can specify the library and include directory with --enable-curses=lib and --enable-curses-include=dir.
lib can either be the complete path of the library—for example
/usr/local/curses/libcurses.a
or the name of the library (for example ncurses) or a combined location and library in the form -Llibdir -llib (for example -L/usr/local/ncurses/lib -lncurses).
dir is the location of the curses header files (for example /usr/local/ncurses/include).
In order for Aspell to correctly spell check UTF-8 documents the "wide" version of the curses library must be installed. This is different from the normal version of curses library, the and is normally named libcursesw (with a w at the end) or libncursesw. With out the right curses version installed UTF-8 documents will not be display correctly.
In addition your system must also support the mblen
function.
Although this function was defined in the ISO C89 standard (ANSI
X3.159-1989), not all systems have it.