c++ - Vivado SDK 无法识别#include "math.h"中的函数

标签 c++ math.h vivado vivado-hls

我在 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 中的答案而且它太笼统了,所以解决我的问题没用。很明显是library的问题,但是不清楚具体在Vivado SDK中如何解决。

我正在与: 操作系统:Windows 7

维瓦多:2016.1

Vivado SDK:2016.1

有什么解决办法吗???

最佳答案

正如解释here在 Xilinx 论坛中,您可以在 Arm v7 gcc liker 中添加“m”值。

为了正确设置此值,请从工具箱中导航 项目 -> 属性 -> C/C++ 构建 -> 设置 -> Arm v7 gcc 链接器 -> 库 -> 库(-l) -> 添加... 在这里你可以添加值“m”。这对您要在项目中使用的所有数学函数都有效。

enter image description here

你最终应该会看到这样的东西。

关于c++ - Vivado SDK 无法识别#include "math.h"中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38308461/

相关文章:

c++ - 编译器何时可以将调用静态绑定(bind)到虚函数?

c++ - 来自 math.h 的函数使用 C++/clr 返回无效结果

c++ - float fmodf(float_x, float_y) 函数,math.h,c++

matlab - 在Vivado HLS上的CLAHE实现

parameter-passing - 在 Verilog 模块之间传递参数

c++ - 使用 next_permutation 置换类 vector

c++ - 带有编程构造菜单的 CMFCMenuButton?

c++ - C++ 中的逐元素操作

c++ - math.h pow 与手动功率性能

c - Vivado/XSDK : How to access address from Zynq M_AXI_GP0 Bus?