Clang没能找到iostream。我该怎么办?

时间:2015-12-13 22:22:07

标签: c++ xcode macos iostream

早些时候,我提出了related question

我从Mac OS中的大型项目中提取了以下程序

#include <iostream>
int main(){
  std::cout<<"hello"<<std::endl;
  return 0;
}

使用Clang进行编译失败,出现以下错误:

$ clang test.cpp
test.cpp:1:10: fatal error: 'iostream' file not found
#include <iostream>
         ^
1 error generated.

有关信息,

A)我已经使用xcodeselect --install安装了xcode命令行工具。但似乎iostream没有位于clang的默认搜索路径中。

B)使用g ++而不是clang编译程序。但在我的问题中,我不允许使用其他编译器而不是clang,或者更改源程序。

C)我可以看到解决方法技术,例如,通过调整.bashrc中的搜索路径或使用某些符号链接等。但我觉得我不愿意使用它们,因为我的Clang和我似乎有安装问题调整路径只会有助于避免这些路径问题之一。

1 个答案:

答案 0 :(得分:1)

clangclang++执行不同的操作。如果要编译C ++代码,则需要使用clang++

或者,您可以通过明确提供语言名称来直接调用c ++编译器:

clang -x=c++