如何让clang搜索gcc的标题?

时间:2015-10-12 14:21:27

标签: c++ c++11 gcc clang libc++

我想用clang(3.3)替换gcc来构建我的C ++ 11代码,所以我应该使用clang的选项-stdlib=libstdc++(让它看到STL头文件)。该选项有效:clang看到string之类的标题,但找不到c ++ 11标题(type_traits),因为clang在4.2目录中搜索:

clang++ -stdlib=libstdc++ -E -x c++ - -v < /dev/null
...
/usr/include/c++/4.2
/usr/include/c++/4.2/backward
/usr/include/clang/3.3
/usr/include
...

如何让它看看GCC标题的永不版本?

据我所知,C ++ 11的clang只支持libc ++(不是libstdc ++),所以安装libc ++的唯一方法是什么?

1 个答案:

答案 0 :(得分:1)

卸载gcc 4.2或使用--gcc-toolchain=<value>选项。

--gcc-toolchain=<value> Use the gcc toolchain at the given directory

例如:clang++ --gcc-toolchain=/usr/local/... -stdlib=libstdc++ ...

  

据我所知,C ++ 11的clang只支持libc ++(不是libstdc ++),所以安装libc ++的唯一方法是什么?

支持两种C ++标准库。