|  | llvm-config - Print LLVM compilation options | 
|  | ============================================ | 
|  |  | 
|  |  | 
|  | SYNOPSIS | 
|  | -------- | 
|  |  | 
|  |  | 
|  | **llvm-config** *option* [*components*...] | 
|  |  | 
|  |  | 
|  | DESCRIPTION | 
|  | ----------- | 
|  |  | 
|  |  | 
|  | **llvm-config** makes it easier to build applications that use LLVM.  It can | 
|  | print the compiler flags, linker flags and object libraries needed to link | 
|  | against LLVM. | 
|  |  | 
|  |  | 
|  | EXAMPLES | 
|  | -------- | 
|  |  | 
|  |  | 
|  | To link against the JIT: | 
|  |  | 
|  |  | 
|  | .. code-block:: sh | 
|  |  | 
|  | g++ `llvm-config --cxxflags` -o HowToUseJIT.o -c HowToUseJIT.cpp | 
|  | g++ `llvm-config --ldflags` -o HowToUseJIT HowToUseJIT.o \ | 
|  | `llvm-config --libs engine bcreader scalaropts` | 
|  |  | 
|  |  | 
|  |  | 
|  | OPTIONS | 
|  | ------- | 
|  |  | 
|  |  | 
|  |  | 
|  | **--version** | 
|  |  | 
|  | Print the version number of LLVM. | 
|  |  | 
|  |  | 
|  |  | 
|  | **-help** | 
|  |  | 
|  | Print a summary of **llvm-config** arguments. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--prefix** | 
|  |  | 
|  | Print the installation prefix for LLVM. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--src-root** | 
|  |  | 
|  | Print the source root from which LLVM was built. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--obj-root** | 
|  |  | 
|  | Print the object root used to build LLVM. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--bindir** | 
|  |  | 
|  | Print the installation directory for LLVM binaries. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--includedir** | 
|  |  | 
|  | Print the installation directory for LLVM headers. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--libdir** | 
|  |  | 
|  | Print the installation directory for LLVM libraries. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--cxxflags** | 
|  |  | 
|  | Print the C++ compiler flags needed to use LLVM headers. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--ldflags** | 
|  |  | 
|  | Print the flags needed to link against LLVM libraries. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--libs** | 
|  |  | 
|  | Print all the libraries needed to link against the specified LLVM | 
|  | *components*, including any dependencies. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--libnames** | 
|  |  | 
|  | Similar to **--libs**, but prints the bare filenames of the libraries | 
|  | without **-l** or pathnames.  Useful for linking against a not-yet-installed | 
|  | copy of LLVM. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--libfiles** | 
|  |  | 
|  | Similar to **--libs**, but print the full path to each library file.  This is | 
|  | useful when creating makefile dependencies, to ensure that a tool is relinked if | 
|  | any library it uses changes. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--components** | 
|  |  | 
|  | Print all valid component names. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--targets-built** | 
|  |  | 
|  | Print the component names for all targets supported by this copy of LLVM. | 
|  |  | 
|  |  | 
|  |  | 
|  | **--build-mode** | 
|  |  | 
|  | Print the build mode used when LLVM was built (e.g. Debug or Release) | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | COMPONENTS | 
|  | ---------- | 
|  |  | 
|  |  | 
|  | To print a list of all available components, run **llvm-config | 
|  | --components**.  In most cases, components correspond directly to LLVM | 
|  | libraries.  Useful "virtual" components include: | 
|  |  | 
|  |  | 
|  | **all** | 
|  |  | 
|  | Includes all LLVM libraries.  The default if no components are specified. | 
|  |  | 
|  |  | 
|  |  | 
|  | **backend** | 
|  |  | 
|  | Includes either a native backend or the C backend. | 
|  |  | 
|  |  | 
|  |  | 
|  | **engine** | 
|  |  | 
|  | Includes either a native JIT or the bitcode interpreter. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | EXIT STATUS | 
|  | ----------- | 
|  |  | 
|  |  | 
|  | If **llvm-config** succeeds, it will exit with 0.  Otherwise, if an error | 
|  | occurs, it will exit with a non-zero value. |