I agree with both Roel and Emre.
"functions" is incorrect and will generate an error every time,
and make sure the first line of your main script is either
#include <acknex.h>(preferred) or #include <lite-c.h> for legacy mode.
(dont ask me to explain legacy mode as I could never figure it out...)
AFAIK, there is no "real" difference between *.c and *.h files.
I its just a convention that *.c files you may need to modify to suit
your application of them, but *.h files should remain untouched.