Ошибка L6218E в Keil, что ещё нужно добавить в проект?

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Вымогатель припоя
Сообщения: 671
Зарегистрирован: Вт июн 29, 2010 12:31:49

Сообщение TripleKill »

Решил заюзать фурье-преобразование из библиотек CMSIS, добавил файлы, начинаю компилировать, выходит следующее:

Код: Выделить всё

Test.axf: Error: L6218E: Undefined symbol arm_cfft_radix4_init_q31 (referred from arm_rfft_init_q31.o).
Test.axf: Error: L6218E: Undefined symbol arm_bitreversal_q31 (referred from arm_rfft_q31.o).
Test.axf: Error: L6218E: Undefined symbol arm_radix4_butterfly_inverse_q31 (referred from arm_rfft_q31.o).
Test.axf: Error: L6218E: Undefined symbol arm_radix4_butterfly_q31 (referred from arm_rfft_q31.o).
Указанные процедуры содержатся в arm_math.h, он тоже подключен к проекту, и открывается нормально вообще из любого места кода, где упоминается. Почему ж тогда IDE ругается? Ещё что-то нужно добавить?
Реклама
Открыл глаза
Сообщения: 47
Зарегистрирован: Вс июн 10, 2012 22:43:19
Откуда: РФ, г. Курск

Сообщение brutal »

Скорее всего в файле asm_math.h содержатся не реализации этих функций, а только прототипы, т.е. объявления.
Нужно в проект подключать файлы с расширением .c где и содержится реализация функций, на которые ругается компилятор.
Tais sa gueule et écoute un silence
Реклама
Опытный кот
Аватара пользователя
Сообщения: 838
Зарегистрирован: Вт апр 12, 2011 18:38:19
Откуда: с Земли

Сообщение coredumped »

Нужно добавить соответствующий файл к проекту. Это может быть исходник (.c .s итп) или скомпилированная библиотека (.lib) В Вашем случае, проще взять готовый .lib файл, чем собирать либы CMSIS из исходников. Какой именно файл нужно подключить, читайте в доке на CMSIS.
Все будет только лучше, в крайнем случае - хуже.
Ответить

Вернуться в «ARM»