Я работал над MPlab 8.83 IDE, и когда я пытался создать код, он продолжал показывать следующее сообщение:
«c: / программные файлы (x86) / микрочип / mplab c30 / bin / bin /../../ lib \ libpic30-coff.a (crt0_standard.o) (. init + 0x1a): crt0_standard.s: неопределенная ссылка в ‘main’ c: / программные файлы (x86) / microchip / mplab c30 / bin / bin /../../ lib \ libpic30-coff.a (crt0_standard.o) (. init + 0x1c): crt0_standard.s : неопределенная ссылка на «основной» шаг ссылки не пройден. »
Почему так и как этого избежать?
Ошибка — «неопределенная ссылка на ‘main'»
Ошибка указывает на то, что «main» не определено в коде.
При создании кода «C» эти элементы необходимы для обеспечения правильной работы и выполнения программы:
o код запуска (crt0_standard.o) для инициализации и очистки переменных, для настройки регистров и процессора
o основная функция
o Сброс условий, которые должны быть обработаны
Идентификатор main является специальным. Это обязательная и первая функция, которая выполняется в программе.
У вас должна быть одна и только одна «основная» функция, определенная в коде.
Однако код, связанный с «main», не первый код, выполняемый после сброса.
Дополнительный код, предоставляемый компилятором и известный как код запуска времени выполнения, выполняется первым и отвечает за передачу
управление функцией main ().
Прототип, который следует использовать для main (), выглядит следующим образом.
int main(void);
Определение main в XC16 таково:
#include <xc.h>
int main ()
{
/* Perform Firwware tasks here */
return 0;
}
Других решений пока нет …