gpt4 book ai didi

c - 对 sqrt 的 undefined reference

转载 作者:行者123 更新时间:2023-11-30 15:00:38 28 4
gpt4 key购买 nike

我已将 math.h 包含在 1.c 中,并将 LDLIBS=-lm 包含在 makefile 中。

1.c和2.c是当前目录中的一些文件。

制作文件如下:

dINES+=PROJECT_CONF_H=\"project-conf.h\"
CONTIKI_PROJECT = 1 2
all: $(CONTIKI_PROJECT)

CONTIKI = ../..

WITH_UIP6=1
UIP_CONF_IPV6=1

CFLAGS+= -DUIP_CONF_IPV6_RPL -DUIP_CONF_IPV6 -DWITH_UIP6
LDLIBS=-lm
ifdef PERIOD
CFLAGS=-DPERIOD=$(PERIOD)
endif

include $(CONTIKI)/Makefile.include

我已阅读相关的 stackoverflow 问题和答案,但无法理解为什么未定义对 sqrt 的引用

最佳答案

首先,请注意 include $(CONTIKI)/Makefile.include 可能会取消您在上面所做的任何设置。因此我们无法调试您的问题。

然后,运行一次 make -p 以了解内置规则(假设您正在使用 GNU make )。请务必阅读documentation of make 。还运行 make --trace 和/或使用 remake (例如 remake -x)来调试 Makefile

请注意,gcc 的程序参数顺序非常重要。首先阅读Invoking GCC gcc 文档的章节。您想要使用 -Wall -g 进行编译(以获取所有警告和调试信息),这可能会添加到您的 CFLAGS+= 行中。也许您的
CFLAGS=-DPERIOD=$(PERIOD) 行应该是 CFLAGS+= -DPERIOD=$(PERIOD)

也许您的LDLIBS=-lm行应该是LIBES= -lm

undefined reference :sqrt消息可能是因为您的编译命令(由make运行)缺少-lm或顺序错误.

关于c - 对 sqrt 的 undefined reference ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41995511/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com