我有下面的代码(剥离到这个问题的基本知识): #include<stdio.h> #include<math.h> double f1(double x) { double res = sin(x); return 0; } /* The main function */ int main(void) { return 0; } 当用gcc test.c编译时,我得到了下面的错误,而且我无法弄清楚为什么: /tmp/ccOF5bis.o: In function `f1': test2.c:(.text+0x13): undefined reference to `sin' collect2: ld returned 1 exit status 但是,我已经写了各种testing程序,从main函数内部调用sin ,而且完美的工作。 我必须在这里做一些明显的错误 – 但是这是什么?