libc++ - clang++ 找不到文件 <iterator>

标签 libc++ clang++

我正在尝试使用 clang 编译我的 C++ 项目(使用带有 boost 的 g++)。我已经使用 clang 工具链成功编译了 boost-libraries (1.53)。我正在使用 CMake 编译我的项目,编译失败并出现以下错误。

In file included from /home/dilawar/Works/hpc21/bliff/BlifParserAndPartitioner/src/expression_graph.h:21:
/usr/local/include/boost/graph/graph_traits.hpp:14:10: fatal error: 'iterator' file not found
#include <iterator>
         ^
1 error generated.

我正在将 -stdlib=libc++ 传递给编译器。我不确定应该安装哪个软件包(ubuntu)来安装 libc++。我的机器上安装了 clang 和 llvm。

我是否必须下载并编译libc++,还是在安装clang时自动安装它?

最佳答案

当您传递 -stdlib=libc++ 时,clang 驱动程序会在不同的目录中查找头文件 目录 w.r.t.当你没有通过旗帜时。您必须单独安装 libc++。 libc++ 网页 ( http://libcxx.llvm.org/ ) 有一些有关如何使用 CMake 安装 libc++ 的详细信息。

此网页可能也有用: http://marshall.calepin.co/llvmclang-and-standard-libraries-on-mac-os-x.html

关于libc++ - clang++ 找不到文件 <iterator>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15060649/

相关文章:

c++ - SFINAE 与特征检测部门有关的问题

c++ - 带有 libc++ 异常的 Clang

linux - 使用 clang++ 时默认启用 libc++/libcxx

gcc - 用clang编译时无法查看std::string

c++ - 将 clang 构建的可执行文件与 g++-v6 构建的 boost 库链接时出错

c++ - if(null) 正在使用 clang++ 编译的特定计算机中执行

c++ - 什么时候 std::string_view::operator== 真的是 constexpr?

c++ - gcc 是否错过了优化 ctor 初始化列表的机会?

c++11 - 为 C++ 标准库配置 clang-check