我试图阅读并理解clang-3.4中的一些c ++ 11代码。但我找不到标准标题。我正在使用mingw32并从源代码构建clang到/usr/local/lib/clang/3.4
的默认位置。
我试图寻找并做了
$ find |grep iostream
从该文件夹中它没有返回任何内容。但是,我可以很好地编译代码。
c ++ 11的clang实现在哪里?我看错了文件夹吗?
---更新---
我使用mingw32(来自mingw.org)在Windows XP 64位下从源代码构建了clang 3.4。我使用以下命令在MSYS中配置了clang / llmv:
./configure --enable-pic --disable-docs --enable-targets=x86,cpp
所以,我假设clang已安装到/ usr / local /,并确实在usr / local / lib下找到clang/3.4
。但是也许头文件在评论建议的其他地方,我在整个MinGW文件夹(包含MSYS)中做了另一个find / grep,但仍然找不到iostream文件。我唯一得到的是gcc版本:
$ cd /c/mingw
$ find | grep iostream
./lib/gcc/mingw32/4.8.1/include/c++/iostream
./mingw32/lib/gcc/mingw32/4.8.1/include/c++/iostream
- 更新2 ---
我尝试使用cmake安装libcxx
cmake -G"MSYS Makefiles" ../libcxx-3.4
make
,并收到以下错误:
...
[100%] Building CXX object lib/CMakeFiles/cxx.dir/__/src/support/win32/support.c
pp.obj
d:/temp/tdm/libcxx-3.4/src/support/win32/support.cpp: In function 'size_t wcsnrt
ombs(char*, const wchar_t**, size_t, size_t, mbstate_t*)':
d:/temp/tdm/libcxx-3.4/src/support/win32/support.cpp:134:88: error: 'wcrtomb_s'
was not declared in this scope
result = wcrtomb_s( &char_size, dst + dest_converted, dest_remainin
g, c, ps);
...