为什么Clang不带标准库标题?

时间:2015-07-22 04:59:40

标签: c++ clang standard-library llvm-clang

我从this website下载了Clang 3.6.2,并尝试使用Windows下的Code :: Blocks进行设置。不幸的是,它无法编译一个简单的" hello world"该计划的理由是它不知道iostream的位置。

查看安装文件夹,它似乎没有包含标准库。为什么?我怎么得到它?

2 个答案:

答案 0 :(得分:7)

标准库不是编译器本身的一部分。它是特定平台上运行时环境的一部分。当然,一些组织将一个“工具包”与构建应用程序的所有必要部分组合在一起 - 甚至可能有人将Clang编译器打包到合适的运行时。

通常,您应该能够下载Windows SDK并获取相关的头文件 - 如果您使用clang-cl,它应该与MSVC编译器大致兼容[或提供{{ 1}}或clang使用正确的clang++或其所谓的任何内容。

或者按照其他答案的建议,使用-fms-compatibility,但对于Windows来说,它不是100%完整。

答案 1 :(得分:1)

他们有一个c ++标准库:libcxx.llvm.org。但是Windows平台并没有完全支持它。