我是Linux操作系统的新手,我正在尝试使用makefile编译一个.c
文件。需要链接数学库。我的makefile如下:
CC=gcc
CFLAGS=-Wall -lm
all:client
.PHONY: clean
clean:
rm *~ *.o client
当我运行make
时,我会得到以下错误:"undefined reference to rint"
因此它无法链接数学库。
但是,当我使用显式编译时
gcc client.c -lm -o client
编译成功。
那么我该如何修改我的makefile以使它正常工作呢?我已经尝试添加LDFLAGS=-lm
,但是我收到了相同的错误。
需要补充一点的是,当我运行make
时,它会被扩展为
gcc -Wall -lm client.c -o client
请注意,当我在显式地在gcc
命令末尾加上-lm
时,它可以正常工作。
SOURCE
实际上没有被使用,可以删除。 - Makkes