**关闭。**此题需要debugging details。目前不接受答复。
编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答这个问题。
两年前关闭。
Improve this question
我已经对这个问题做了一些研究,并在我的标签列表的末尾包括了-lm,但我总是得到一个未定义的引用____与几个数学函数,如cos和sin。编辑:我包括<math.h><stdlib.h>,<stdio.h>
CFLAGS= -std=gnu18 -Wall -Wextra -Who-unused -pedantic -g -O3 -lm
CC=gcc
PROGRAMS=main
LIBS=libct.a
OBJECTS= mex.o count.o id.o orag.o
all: $(PROGRAMS) $(LIBS)
libct.a: $(OBJECTS)
ar rcs $@ $^
main: main.o $(OBJECTS)
%.o: %.c
$$(CC) $(CFLAGS) -c -o $@ $<
%: %.o
$$(CC) $(CFLAGS) -o $@ $^
.PHONY:clean_objects clean all
clean_objects:
rm -f *.o
clean:
rm -f $(PROGRAMS) $(LIBS) *.o
1条答案
按热度按时间ni65a41a1#
链接器不会链接
libm
,除非在使用它的对象文件之后指定它。所以你需要改成和