我有以下代码(精简到这个问题的基本原理) :
#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
然而,我已经编写了各种从 main
函数内部调用 sin
的测试程序,它们工作得非常完美。我一定是做错了什么,但是到底是什么呢?