Когда я пытаюсь скомпилировать файл .c с Cooja, Contiki, есть следующие ошибки:
contiki-z1-main.c(.init9+0x200): undefined reference to `autostart_processes` contiki-z1-main.c(.init9+0x224): undefined reference to `autostart_processes`
Кто-нибудь знает проблему?
Вы не определили AUTOSTART_PROCESSES()
, поэтому Contiki не знает, с чего начать выполнение вашего приложения.
Например, Blink,
PROCESS(blink_process, "Blink example"); AUTOSTART_PROCESSES(&blink_process);
Беспокойство в том, что «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, функция автозапуска не будет работать, и ваш процесс не запустится.