【发布时间】:2019-09-02 10:05:29
【问题描述】:
我正在尝试在 xCode 项目中使用 boost::multiprecision::float128。
我的编译器版本是 苹果 clang 版本 11.0.0 (clang-1100.0.20.17) 目标:x86_64-apple-darwin18.7.0 线程模型:posix
我正在使用 boost.1.71.0
我收到以下编译错误
'quadmath.h' 文件未找到
在 float128.hpp 中
extern "C" {
#include <quadmath.h>
}
我看到了几个关于这个问题的帖子
-
https://svn.boost.org/trac10/ticket/8265
19 个月前 John Maddock (clang 不支持 float128 和 libquadmath,所以你运气不好:该标头仅受 gcc 和 Intel 编译器支持。)
因为我发现的讨论主题已有几年历史了
- 那么我不能在 xCode 项目中使用 boost::multiprecision::float128 仍然是真的吗?
- 可能在 boost 设置过程中丢失了某些东西,它有 lib 文件夹,并且在 boost 设置过程中丢失了一些东西?
- 我当前的编译器版本是否有解决此问题的方法?
【问题讨论】:
-
boost 安装在哪里/如何安装?您的标题搜索路径设置为什么?
-
我已经在我的项目文件结构中设置了 boost,因为我将使用 boost 的一部分,我使用 bcp 来获取我需要的 .hpp 文件。我认为我的标题搜索路径设置正确,因为我可以毫无问题地使用 int128。我遇到了 float128 的问题,看起来 xcode 有问题。约翰·马多克(John Maddock)大约一年前在 boost 票下评论过,clang 不支持 float128 和 libquadmath,所以你不走运:该头文件仅受 gcc 和 Intel 编译器支持。但我不确定这是否仍然有效,或者可能有一些方法可以解决这个问题。
-
好吧,
file not found错误似乎表明设置存在问题。我建议你使用像 Homebrew 这样的包管理器,以避免在你的系统上管理 boost 的安装。 -
@trojanfoe 感谢您的推荐,最初我使用 Homebrew 和 cocoapods,但我遇到了空间问题,并决定使用 bcp 工具来仅获取所需的 boost 部分。但这不是标准文件未找到错误,这是已知的问题与铿锵声。我在这里写信是希望最近有所改变。
标签: c++ ios xcode boost clang++