Check out the offending lines and surrounding.
There should be something like:

#if defined(HAVE_FL_IMAGE_3)

Different versions of FLTK have changed the # of parameters of some functions
and ruby-fltk has kept compatability so far using define symbols.
You are currently using the wrong one.  Add a -DHAVE_FL_IMAGE3 to your Makefile
(just check where other defines are passed like HAVE_X11_X_H).

If you are like me when I compiled it on windows, you will need to set two or
three defines to make sure all compiles fine.