首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Contiki找不到对rpl_set_root()的引用

Contiki找不到对rpl_set_root()的引用
EN

Stack Overflow用户
提问于 2021-03-16 14:12:21
回答 1查看 143关注 0票数 0

我试图运行contiki3.x在contiki-ng上编写的代码,我得到了一个编译错误,它声明了对‘rpl_set_root’的未定义引用,尽管我包含了“net/routing/rpl-古典/rpl.h”。我打开了源代码rpl-古典/rpl.h和rpl-古典/rpl.c-我可以清楚地看到功能在那里。

下面的代码会产生编译错误。

uip_ds6_addr_add(&ipaddr,0,ADDR_MANUAL);

代码语言:javascript
复制
root_if = uip_ds6_addr_lookup(&ipaddr);
if(root_if != NULL) {
  rpl_dag_t *dag;
  dag = rpl_set_root(RPL_DEFAULT_INSTANCE,(uip_ip6addr_t *)&ipaddr);
  uip_ip6addr(&ipaddr, 0xaaaa, 0, 0, 0, 0, 0, 0, 0);
  rpl_set_prefix(dag, &ipaddr, 64);

} else {
  printf("No DAG created\n");
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-16 14:56:04

默认情况下,Contiki-NG启用了RPL-lite,它没有此功能。

要切换到RPL经典,请将这一行添加到应用程序的Makefile中:

代码语言:javascript
复制
MAKE_ROUTING = MAKE_ROUTING_RPL_CLASSIC

然后,make clean并再次构建应用程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66656966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档