libclang在使用Xcode的Mac上的<>括号中找不到标题

时间:2019-06-26 15:29:52

标签: c++ xcode include clang libclang

编辑:

该程序进行编译。只有在运行时它才能找到iostream。我正在使用与Xcode捆绑在一起的libclang.dylib。

我写了一个小工具开始使用libclang。我正在尝试解析TranslationUnits。以下程序保存在文件tool.cpp中。编译并运行后,它将尝试将tool.cpp解析为TU。由于无法在我的Mac上找到iostream,因此无法使用默认标头干净运行。多次尝试提供指向文件的参数后,它仍然不起作用。有什么想法吗?

 #include "tool.h"
 #include <iostream>

 int main(int argc, char* argv[]) {
     CXIndex index = clang_createIndex(0,0);


     const char *args[] = {
     "-I/usr/include",
     "-I/usr/local/include",
     "-I.",
     "-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include",





     //Should be here
     "-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/4.2.1"
     }

 ;

输出:

tool.cpp 6:10: 'iostream' file not found

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我正在尝试将CPP添加到iOS Objective-C。没用我发现这与苹果公司下一次“痛苦”有关,因为他们不再使用标准的C ++库。我已经尝试了此站点上提到的所有内容,但没有找到任何解决方案:

enter image description here enter image description here enter image description here