Вы, вероятно, должны явно ссылаться на библиотеку. В UNIX-подобной системе это обычно будет "/usr/lib/libm.a". Стандартная библиотека C должна быть связана по умолчанию, но математическая библиотека, в зависимости от вашей системы, не связана, и вам, возможно, придется ссылаться явно. (например, в Mac OS X он также связан по умолчанию в моей системе Ubuntu, это не так).
Обратите внимание, что это не имеет никакого отношения к вашему пути включения. Если вы работаете с чем-то вроде UNIX, вы, вероятно, найдете заголовок с объявлением прототипа в "/usr/include/math.h", где ваш компилятор всегда будет искать заголовки.
Если вы используете gcc, вы можете связать напрямую с:
gcc yourfile.c /usr/lib/libm.a -o out
или с "-l nameroflibrary ", например:
gcc yourfile.c -lm -o out
это будет искать библиотеку в том же каталоге, что и стандартная библиотека C с именем "lib nameoflibrary .a"