Using clang for getting AST

it may was better to ask this question in clang front-end topic. but I’m beginner in clang usage, so ask here.
I want to write a code, getting C code, parse it and get AST to my project. then the project will check it for some static checks and then run it.
I’m not worry about backend, and is not my job yet. I’m just looking for something to give me AST. I search alot and I think the best option is clang. in clang looked for libclang, plugins and libtooling as well and again I found libtooling is for me. now I have serious problem in building. my question is, if I want to use clang in my project for above purpose, do I need import all llvm and clang in my project and build it each time??

IIUC, the answer is No.

If you build clang and install it in your system, you can just simply include its headers, and link its libraries. That said, you don’t have to build it each time because you won’t touch its code but only write a non-intrusive plugin.

tnx for your reply.
I asked it because all example code that I found, they used in-tree build.

I want this libraries:

clangFrontend.a clangSerialization.a clangDriver.a
clangTooling.a clangParse.a clangSema.a
clangRewriteFrontend.a clangRewriteCore.a
clangAST.a clangLex.a clangBasic.a

I also built all of llvm-project but doesn’t find any of them in the build.
How/where I find them?