【发布时间】:2012-10-26 07:43:39
【问题描述】:
我是 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 时,它可以工作)。
【问题讨论】: