【问题标题】:Newbie problem with gcc 4.2 compiler (Mac OSX): fpu_control.h: No such file or directorygcc 4.2编译器(Mac OSX)的新手问题:fpu_control.h:没有这样的文件或目录
【发布时间】:2010-11-24 21:55:23
【问题描述】:

我正在尝试用 c/c++ 编译程序,但收到错误消息:

fpu_control.h: 没有那个文件或目录

从google,我发现这个问题与处理浮点精度的方式有关。我读到并非所有 gcc 发行版都包含 fpu_control.h。

这是我唯一能找到的。我进行了广泛的搜索,找不到任何地方可以下载这个 fpu_control.h。有人可以帮忙吗?

谢谢大家。

【问题讨论】:

  • 如所写,您的问题无法回答。你想用fpu_control.h 完成什么?这不是标准标头,但根据您想要执行的操作,可能有标准标头可以帮助您完成此操作,例如 fenv.h
  • 我正在尝试编译的程序需要它。它显然处理浮点精度,这是程序的一个重要问题。至于它的具体功能,我不知道。从我在谷歌上可以找到的信息来看,许多编译器都有它,但我的(gcc 4.2)没有。我已经用谷歌搜索了它,希望能找到它,但没有运气。

标签: c++ c gcc fpu


【解决方案1】:

Apple 不支持设置 FPU 标志和doing so isn't needed。原因是they don't even use the i387 coprocessor for float and double, but SSE。最后一个参考资料还解释了如何恢复这种方法,以及如何使用内联汇编执行 FPU 控制。

【讨论】:

  • 非常感谢马丁。这些链接看起来很有帮助。抱歉,我在 Stack Overflow 上不够重要,无法投票给你!
  • 如果这个答案确实令人满意,按照惯例将其标记为已接受(当时为绿色的复选框)。
【解决方案2】:

fpu_control.h 不是 mac OSX 头文件。显然,您尝试编译的代码并不意味着要在 OSX 上编译。您必须注释掉此功能或在您自己的标头中替换它(为方便起见,可能称为 fpu_control.h)。

【讨论】:

  • 谢谢 Goz。我确实尝试将其注释掉,但这是一个问题,因为浮点精度在程序中很重要。它不打算在 OSX 中编译,但创建者认为它可以完成。感谢您的帮助。
猜你喜欢
  • 2016-05-21
  • 2021-10-10
  • 1970-01-01
  • 2017-09-16
  • 1970-01-01
  • 1970-01-01
  • 2018-07-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多