新闻  |   论坛  |   博客  |   在线研讨会
linux下调用math.h编译出错undefinde reference to 'sin'
machinnneee | 2021-06-01 13:43:53    阅读:1898   发布文章

如果直接gcc编译,会出现未定义的情况:

/tmp/ccbS6FZx.o: In function `main':

fft.c:(.text+0x71): undefined reference to `sin'

fft.c:(.text+0x9f): undefined reference to `sin'

fft.c:(.text+0x25e): undefined reference to `pow'

fft.c:(.text+0x2d5): undefined reference to `pow'

fft.c:(.text+0x45e): undefined reference to `pow'

fft.c:(.text+0x548): undefined reference to `sqrt'

/tmp/ccbS6FZx.o: In function `Wn_i':

fft.c:(.text+0x64d): undefined reference to `cos'

fft.c:(.text+0x674): undefined reference to `sin'

collect2: error: ld returned 1 exit status

是因为缺少调用,具体需要添加-lm进行编译

gcc a.c -o a -lm

 其中a.c为源代码,a为编译后输出结果, -lm为gcc选项

在编译即可。

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客