FreeRTOS с основным файлом C ++

Я пытаюсь использовать приложение C ++ с FreeRTOS.
Я узнаю об этом посте: — https://sourceforge.net/p/freertos/discussion/382005/thread/5d5201c0 но я не уверен, как и где добавить этот файл TaskCPP.h.

Прямо сейчас у меня есть очень простой файл main.cpp что-то вроде этого.

int main(void)
{
//Set priority bits to preempt priority
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);
for( ;; );
return 0;
}

И это дает мне ошибку: —

/usr/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/ld: error: STM32F4_FreeRTOS.axf uses VFP register arguments, /usr/bin/../lib/gcc/arm-none-eabi/4.7.4/libgcc.a(unwind-arm.o) does not

/usr/bin/../lib/gcc/arm-none-eabi/4.7.4/../../../../arm-none-eabi/bin/ld: failed to merge target specific data of file /usr/bin/../lib/gcc/arm-none-eabi/4.7.4/libgcc.a(unwind-arm.o)

Я не уверен, что не так с настройками.

1

Решение

Эта ошибка связана с вашей цепочкой инструментов. Ваша целевая тройка указывает на более общую цепочку инструментов, но FreeRTOS, похоже, использует более конкретные функции ARM. Вы можете прочитать этот вопрос: Ошибка компиляции ARM, зарегистрированный VFP используется исполняемым файлом, а не объектным файлом

В качестве обходного пути: вызов вашего компилятора с -print-multi-lib и проверьте, доступны ли библиотеки, необходимые для FreeRTOS. Если они есть, вам нужно их включить. Если это не так, вам придется использовать другую цепочку инструментов.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector