LLVM-CONFIG(1) | LLVM | LLVM-CONFIG(1)

# NAME

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:

    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

--assertion-mode

Print the assertion mode used when LLVM was built (ON or OFF).

--bindir

Print the installation directory for LLVM binaries.

--build-mode

Print the build mode used when LLVM was built (e.g. Debug or Release).

--build-system

Print the build system used to build LLVM (e.g. cmake or gn).

--cflags

Print the C compiler flags needed to use LLVM headers.

--cmakedir

Print the installation directory for LLVM CMake modules.

--components

Print all valid component names.

--cppflags

Print the C preprocessor flags needed to use LLVM headers.

--cxxflags

Print the C++ compiler flags needed to use LLVM headers.

--has-rtti

Print whether or not LLVM was built with rtti (YES or NO).

--help

Print a summary of llvm-config arguments.

--host-target

Print the target triple used to configure LLVM.

--ignore-libllvm

Ignore libLLVM and link component libraries instead.

--includedir

Print the installation directory for LLVM headers.

--ldflags

Print the flags needed to link against LLVM libraries.

--libdir

Print the installation directory for LLVM libraries.

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

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

--libs

Print all the libraries needed to link against the specified LLVM components, including any dependencies.

--link-shared

Link the components as shared libraries.

--link-static

Link the component libraries statically.

--obj-root

Print the object root used to build LLVM.

--prefix

Print the installation prefix for LLVM.

--shared-mode

Print how the provided components can be collectively linked (shared or static).

--system-libs

Print all the system libraries needed to link against the specified LLVM components, including any dependencies.

--targets-built

Print the component names for all targets supported by this copy of LLVM.

--version

Print the version number of LLVM.

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

# AUTHOR

Maintained by the LLVM Team (https://llvm.org/).

# COPYRIGHT

2003-2024, LLVM Project

2024-12-23 | 19