| 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 libaries. 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. |