Undefined reference to "function name"
This is a common confusion in C programming.
The library is NOT the same as the header (.h) file. C libraries are collections of compiled objects which are LINKED to your object code by the linker. Header files are lexically included by the preprocessor.
When you compile, you need to make sure that the libraries are where they're supposed to be AND the header files (INCLUDE=...) are where they're supposed to be. Either one can mess you up.