Vivado SDK не распознает функции внутри #include "math.h"
Я написал простой проект в Vivado SDK, чтобы протестировать мою HW-платформу, разработанную в Vivado. Моя проблема в том, что SDK не распознает функцию sin(). Я включил библиотеку "math.h" без каких-либо ошибок, программа распознает библиотеку, в которую включена функция sin() (я проверил ее самостоятельно).
Я получаю эту ошибку:
C:\PATH...\Debug/../src/helloworld.c: undefined reference to `sin' collect2.exe: error: ld returned 1 exit status
Я прочитал ответ здесь, и он слишком общий, поэтому решить мою проблему было бесполезно. Понятно, что есть проблема с библиотекой, но не ясно, как ее конкретно решить в Vivado SDK.
Я работаю с: ОС: Windows 7
Vivado: 2016.1
Vivado SDK: 2016.1
Любое решение???
1 ответ
Как было объяснено здесь на форуме Xilinx, вы можете добавить в Arm v7 gcc liker значение "m".
Чтобы правильно установить это значение, перейдите из панели инструментов в Project -> Properties -> C/C++ Build -> Settings -> Arm v7 gcc linker -> Libraries -> Libraries(-l) -> Add… и сюда вы можете добавить значение "м". Это действительно для всех математических функций, которые вы хотите использовать в своем проекте.
Вы должны увидеть что-то подобное в конце.