我是Linux OS的新手.我正在尝试.c使用makefile 编译文件.必须链接数学库.我的makefile看起来像这样:
CC=gcc
CFLAGS=-Wall -lm
all:client
.PHONY: clean
clean:
rm *~ *.o client
Run Code Online (Sandbox Code Playgroud)
当我运行时make,我收到以下错误:
"undefined reference to rint"
Run Code Online (Sandbox Code Playgroud)
所以它无法链接数学库.
但是当我使用明确编译时
gcc client.c -lm -o client
Run Code Online (Sandbox Code Playgroud)
它成功编译.
那么我应该如何更改我的makefile以使其正常工作.我已经尝试过添加LDFLAGS=-lm.但我得到了同样的错误.
我还应该补充一点,当我跑步时make,它会扩展到
gcc -Wall -lm client.c -o client
Run Code Online (Sandbox Code Playgroud)
(请注意,当我最后gcc明确地运行-lm时,它的工作原理).