前两天一个程序用到来C语言头文件math.h中到数学函数,不过链接到时候总是出现如下错误:
t.o: In function `work':
limit.c:(.text+0xa5): undefined reference to `sin'
collect2: ld returned 1 exit status
换其他到函数一样都是这样到错误,没思考,直接搜到,下次碰见错误得思考了。
搜到如下:
『 undefined reference to sin 』,说的是『 没有 sin 的相关定义参考值! 』,为什么会这样呢?这是因为 C 语言里面的 sin 函示是写在 libm.so 这个函式库中,而我们并没有在原始码里面加入相关的说明,所以当然就需要在编译与连结的时候将这个函式库给他连结进执行档里面啊
不过自己不明白,为什么没有不能调用???
慢慢来啦~~~
还有就是一般这样到错误:.text+0xa5
我碰到到几次都是与没有链接静态库有关的。