【问题标题】:contiki-z1-main.c : "undefined reference to 'autostart_processes'"contiki-z1-main.c:“未定义的对‘autostart_processes’的引用”
【发布时间】:2023-06-22 19:54:01
【问题描述】:

当我尝试使用 Cooja、Contiki 编译 .c 文件时,出现以下错误:

 contiki-z1-main.c(.init9+0x200): undefined reference to `autostart_processes`
 contiki-z1-main.c(.init9+0x224): undefined reference to `autostart_processes`

有人知道这个问题吗?

【问题讨论】:

  • 我认为您应该向我们提供有关您的问题的更多详细信息:(分享您的源代码)。
  • 我遇到了完全相同的问题。如果您与我们分享您可能拥有的任何可能的解决方案,我将不胜感激。

标签: c contiki


【解决方案1】:

您尚未定义 AUTOSTART_PROCESSES(),因此 Contiki 不知道从哪里开始执行您的应用程序。

例如眨眼,

PROCESS(blink_process, "Blink example");
AUTOSTART_PROCESSES(&blink_process);

【讨论】:

    【解决方案2】:

    因为“AUTOSTART_PROCESSES”定义不正确。

    在“autostart.h”文件中,你可以找到代码:

    #if AUTOSTART_ENABLE
    #define AUTOSTART_PROCESSES(...)                    \
    struct process * const autostart_processes[] = {__VA_ARGS__, NULL}
    #else /* AUTOSTART_ENABLE */
    #define AUTOSTART_PROCESSES(...)                    \
    extern int _dummy
    

    所以如果你不定义“AUTOSTART_ENABLE”为1,自动启动功能将不起作用,你的进程也不会启动。

    【讨论】: