问题描述
在使用 MATLAB Coder 时,我“注册”了一个使用 Intel C 编译器 (icc) 作为编译器的工具链,并且链接器。代码生成步骤似乎运行完成,但编译失败。 icc 对象到生成的文件 rt_nonfinite.c 中的两行:
real_T rtNaN = (real_T)NAN;
real_T rtInf = (real_T)INFINITY;
第一行的错误响应是error: identifier "NAN" is undefined;
。响应第二行的错误完全类似。
我看到在 icc 附带的 math.h 文件中定义了 NAN 和 INFINITE。
我修复这些错误的尝试是添加
tc.addMacro('C_STANDARD_OPTS',' -D__PURE_INTEL_C99_HEADERS___')
到工具链定义。但这导致了 error: expression must have a constant value
相同的行和更多。我怀疑在 C99 中不能有这样的定义。
我该如何解决这个问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)