我在Vivado SDK中编写了一个简单的项目,以测试我在Vivado中开发的硬件平台。 我的问题是 SDK无法识别sin()函数。我已经包含" math.h" 库而没有任何错误,程序识别出包含sin()函数的库(我自己检查过它) 。
我收到此错误:
C:\PATH...\Debug/../src/helloworld.c: undefined reference to `sin' collect2.exe: error: ld returned 1 exit status
我已经在here中读到了答案,而且它过于笼统,所以解决我的问题毫无用处。很明显存在库的问题,但目前还不清楚如何在Vivado SDK中专门解决它。
我正在与: 操作系统:Windows 7
Vivado:2016.1
Vivado SDK:2016.1
任何解决方案???
答案 0 :(得分:5)
正如Xilinx论坛中的解释here,您可以在 Arm v7 gcc liker 中添加“m”值。
为了正确设置此值,请从工具箱中导航 项目 - >属性 - > C / C ++ Build - >设置 - > Arm v7 gcc linker - >图书馆 - >库(-l) - >添加... 在这里你可以添加值“m”。这适用于您要在项目中使用的所有数学函数。
你最终应该看到这样的东西。