Я изо всех сил пытаюсь исправить следующую ошибку
** Error 71 "FilePath\$linker.c" Line 3(8,14): Out of ROM, A segment or the program is too large MAIN
Seg 000C6-03CBE, 0C3E left, need 00DA2
Seg 00000-00002, 0000 left, need 00DA2 Reserved
Seg 00004-00006, 0004 left, need 00DA2
Seg 00008-000C4, 0000 left, need 00DA2 Reserved
Это было вызвано тем, что я переместил функции из Main. c, так как я унаследовал код и все был в основном. c кроме нескольких функций, которые были в некоторых заголовочных файлах, но других *. c файлов в проекте нет.
Из того, что я смог выяснить, это причина по крайней мере, одной функцией, использующей более одной страницы в ПЗУ. Я уже попробовал следующие предложения:
- Разбить функции на более мелкие функции
- Оптимизировать код, чтобы было меньше кода, где это возможно
Так что мой вопросы:
- Должен ли я просто поместить все это обратно в main, чтобы не нужен компоновщик? (это определенно не идеально для меня)
- Если я разбью его на более мелкие *. c файлы, будет ли это иметь какой-либо эффект?
- Могу ли я попробовать еще что-нибудь?