forked from OSchip/llvm-project
176 lines
3.5 KiB
ReStructuredText
176 lines
3.5 KiB
ReStructuredText
llvm-config - Print LLVM compilation options
|
|
============================================
|
|
|
|
.. program:: llvm-config
|
|
|
|
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
|
|
-------
|
|
|
|
**--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`).
|
|
|
|
**--src-root**
|
|
|
|
Print the source root from which LLVM was built.
|
|
|
|
**--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.
|