#include <iostream>
using namespace std;
int main(){
std::cout << "Hello World\n";
return 0;
}
命令1(有效)
clang hello.cc -o hello -lc++
命令2(不起作用)
/path/to/custom/clang hello.cc -o hello -lc++
main.cc:2:10: fatal error: 'iostream' file not found
#include <iostream>
^
1 error generated.
为什么我无法使用command 2
进行编译?
答案 0 :(得分:3)
看起来您正在尝试使用C编译器编译C ++。请尝试改为运行clang++
。
clang++ hello.cc -o hello
如果不将clang作为C ++编译器运行,它将不具备可供您包含的C ++标准库头。使用clang++
可以使用C ++标准库头文件,并自动链接C ++标准库。
答案 1 :(得分:1)
这是一个已知的Ubuntu问题。他们的clang
只是没有正确设置。我抱怨它here - 这种情况多年来一直没有固定。
但好消息是它现在适用于最新的16.10版本。
编辑:根据您更新的问题,我会说“自定义铿锵”并不知道其包含文件。