编辑:
该程序进行编译。只有在运行时它才能找到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