C程序编译错误:未定义的引用

Yuc*_* Li 2 c gcc

我无法编译以下简单的C代码,我不知道为什么.

#include <stdlib.h>
#include <stdint.h>
#include <stdio.h>
#include <math.h>
int main(){
     double result;
     result = cos(0.5);
     printf("asin(0.5) is %f\n", result);
     return 0;
}
Run Code Online (Sandbox Code Playgroud)

我尝试编译后收到的错误消息是 -

In function 

'main':
test.c:(.text+0xlc): undefined reference to 'cos'
collect2: ld

 returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

cni*_*tar 14

您需要链接数学库(-lm).

gcc -Wall -Wextra -o test test.c -lm
Run Code Online (Sandbox Code Playgroud)

请参阅此C FAQ.