libclang: ошибка: clang-C / Index.ч: нет такого файла или каталога

Я пытался использовать clang для анализа кода C++, но не могу скомпилировать исходный код, потому что не могу найти заголовки libclang.

Я запускаю ubuntu 10.04 и успешно установил clang и llvm из репозиториев.

пожалуйста, скажите мне, где найти файл для включения .

пример, который я пытаюсь запустить:

    #include<clang-c/Index.h>

    int main(int argc, char *argv[]) {
    CXIndex Index = clang_createIndex(0, 0);
    CXTranslationUnit TU = clang_parseTranslationUnit(Index, 0,argv, argc, 0, 0, CXTranslationUnit_None);
    for (unsigned I = 0, N = clang_getNumDiagnostics(TU); I != N; ++I) {
    CXDiagnostic Diag = clang_getDiagnostic(TU, I);
    CXString String = clang_formatDiagnostic(Diag,
    clang_defaultDiagnosticDisplayOptions());
    fprintf(stderr, "%sn", clang_getCString(String));
    clang_disposeString(String);
    }
    clang_disposeTranslationUnit(TU);
    clang_disposeIndex(Index);
    return 0;
    }

2 ответов


пакет clang-2.7 от ubuntu 10.04 http://packages.ubuntu.com/lucid/devel/clang не включает файл заголовка clang-c/Index.h, ни у libclang.так:

http://packages.ubuntu.com/lucid/i386/clang/filelist

также не делают LLVM-dev пакет:http://packages.ubuntu.com/lucid/i386/llvm-dev/filelist

Итак, ubuntu 10.04 не имеет пакета clang с libclang или чем-либо, связанным с clang развитие.

Как предложил Бантар, вы должны использовать clang с сайта llvm, либо построенный из источников (это легко в ubuntu), либо упакованный как двоичный пакет.


As Адам Монсен сказано в комментарии к принятому ответу, начиная с Ubuntu 13.10, файл предоставляется следующим пакетом:

libclang-3.4-dev

изменить номер версии в соответствии с вашими требованиями. Файл находится в

/usr/lib/llvm-3.4/include/clang-c/Index.h