不能在C 文件中包括标准库
Cannot include standard libraries in C++ file
#include <iostream>
using namespace std;
int main(){
std::cout << "Hello Worldn";
return 0;
}
命令1(works)
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
?
看起来您正在尝试使用C编译器编译C 。尝试运行clang++
。
clang++ hello.cc -o hello
如果不作为C 编译器运行clang,它将没有C 标准库标头供您包含。使用clang++
可用C 标准库标题,C 标准库自动为您链接。
这是一个已知的ubuntu问题。他们的clang
只是不正确的设置。我在这里抱怨它 - 多年来一直没有解决。
但是,好消息现在它可以与最近的16.10版本一起使用。
编辑:基于您更新的问题,我会说"自定义clang"不知道其包含文件。
相关文章:
- 使用CMake检测支持的C++标准
- C++17 标准库包括不适用于 Visual Studio 2017 中的 Android 项目
- C++标准是否包括标准标头必须包含的内容?
- 确定源文件是否不规律地依赖间接包括标准标头
- 在我的项目中包括eigen将标准INT定义为eigen :: denseIndex-如何使用正常INT
- 哪个C 标准包括要添加到对象文件中的文件强制代码 /数据
- C++17标准是否包括"std::byte"?
- 如何包括标准的C 库来完成缺失的库
- 您如何包括Arduino中的标准C 库
- 不能在C 文件中包括标准库
- 是否有有效的标准算法来栅格化面,包括其内部区域
- 为什么C 标准仍然不包括文件系统和网络
- C++标准库在任何时候都包括每个平台的原生头文件吗
- 包括包含标准包含的 C 头文件(不带 C++11)
- 包括C++标准库
- 如何使用标准库(包括boost)实现简单的字符串模式匹配
- Python安装工具不包括C++标准库头
- GCC-标准库中的致命错误,包括
- 包括标准头文件.string.h还是cstring?或两者兼有
- 标准库包括Android NDK