llvm-defaults
"llvm-defaults" is a collection of tools and libraries that provide a complete development environment for LLVM-based projects on Debian systems.
LLVM is a collection of modular and reusable compiler and toolchain technologies. llvm-defaults is a tool that simplifies the installation and management of LLVM packages on Debian-based Linux distributions. It provides a meta-package that depends on the appropriate version of LLVM and its associated libraries and tools. By using llvm-defaults, users can easily install and maintain LLVM packages, including Clang, a popular C++ compiler, and other development tools that rely on LLVM. The tool also ensures that the correct dependencies are installed and that upgrades are smooth and error-free. LLVM and llvm-defaults are widely used in the development of operating systems, programming languages, and other software that require efficient and reliable compilation and optimization.
Packages and Binaries:
clang
Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the default clang compiler.
Installed size: 19 KB
How to install: sudo apt install clang
asan_symbolize
:~# asan_symbolize -h
usage: asan_symbolize [-h] [-d] [-c CROSS_COMPILE] [-l LOGFILE]
[--force-system-symbolizer] [--log-dest LOG_DEST]
[--log-level {debug,info,warning,error,critical}]
[-p PLUGINS [PLUGINS ...]] [--module-map MODULE_MAP]
[--skip-uuid-validation] [-s SYSROOT]
[path_to_cut ...]
ASan symbolization script
positional arguments:
path_to_cut pattern to be cut from the result file path
options:
-h, --help show this help message and exit
-d, --demangle demangle function names
-c CROSS_COMPILE set prefix for binutils
-l LOGFILE, --logfile LOGFILE
set log file name to parse, default is stdin
--force-system-symbolizer
don't use llvm-symbolizer
--log-dest LOG_DEST Destination path for script logging (default stderr).
--log-level {debug,info,warning,error,critical}
Log level for script (default: info).
-p PLUGINS [PLUGINS ...], --plugins PLUGINS [PLUGINS ...]
Load plug-in
--module-map MODULE_MAP
Path to text file containing module mapoutput. See
print_module_map ASan option.
--skip-uuid-validation
Skips validating UUID of modules using otool.
-s SYSROOT set path to sysroot for sanitized binaries
Example of use:
asan_symbolize.py -c "$HOME/opt/cross/bin/arm-linux-gnueabi-" -s "$HOME/SymbolFiles" < asan.log
PLUGINS
This script provides a way for external plug-ins to hook into the behaviour of
various parts of this script (see `--plugins`). This is useful for situations
where it is necessary to handle site-specific quirks (e.g. binaries with debug
symbols only accessible via a remote service) without having to modify the
script itself.clang
The Clang C, C++, and Objective-C compiler
clang++
clang-format
Clang-format is both a library and a stand-alone tool with the goal of automatically reformatting C++ sources files according to configurable style guides. To do so, clang-format uses Clang’s Lexer to transform an input file into a token stream and then changes all the whitespace around those tokens. The goal is for clang-format to both serve both as a user tool (ideally with powerful IDE integrations) and part of other refactoring tools, e.g. to do a reformatting of all the lines changed during a renaming.
This is a dependency package providing the clang format tool.
Installed size: 28 KB
How to install: sudo apt install clang-format
clang-format
Manual page for clang-format 14
clang-format-diff
Manual page for clang-format-diff.py 14
git-clang-format
clang-tidy
Provide an extensible framework for diagnosing and fixing typical programming errors, like style violations, interface misuse, or bugs that can be deduced via static analysis. clang-tidy is modular and provides a convenient interface for writing new checks.
clang-tidy replaces clang-modernize
This is a dependency package providing the clang tidy tool.
Installed size: 20 KB
How to install: sudo apt install clang-tidy
clang-tidy
Manual page for clang-tidy 14
clang-tidy-diff
run-clang-tidy
clang-tools
Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the clang tools package.
Installed size: 26 KB
How to install: sudo apt install clang-tools
c-index-test
clang-apply-replacements
Manual page for clang-apply-replacements 14
clang-check
Manual page for clang-check 14
clang-query
Manual page for clang-query 14
sancov
Manual page for sancov 14
scan-build
Clang static analyzer
scan-view
Manual page for scan-view 14
clangd
clangd understands your C++ code and adds smart features to your editor:
code completion
compile errors
go-to-definition
and more.
clangd is a language server that implements the Language Server Protocol; it can work with many editors through a plugin.
This is a dependency package providing clangd.
Installed size: 15 KB
How to install: sudo apt install clangd
clangd
Manual page for clangd 14
libc++-dev
libc++ is another implementation of the C++ standard library
Features and Goals
Correctness as defined by the C++ standards.
Fast execution.
Minimal memory use.
Fast compile times.
ABI compatibility with gcc’s libstdc++ for some low-level features such as exception objects, rtti and memory allocation.
Extensive unit tests.
This is a dependency package providing the default LLVM C++ Standard library development files.
Installed size: 10 KB
How to install: sudo apt install libc++-dev
libc++-dev-wasm32
libc++ is another implementation of the C++ standard library
Features and Goals
Correctness as defined by the C++ standards.
Fast execution.
Minimal memory use.
Fast compile times.
ABI compatibility with gcc’s libstdc++ for some low-level features such as exception objects, rtti and memory allocation.
Extensive unit tests.
This is a dependency package providing the default 32-bit WebAssembly System Interface.
Installed size: 10 KB
How to install: sudo apt install libc++-dev-wasm32
libc++1
libc++ is another implementation of the C++ standard library.
Features and Goals
Correctness as defined by the C++ standards.
Fast execution.
Minimal memory use.
Fast compile times.
ABI compatibility with gcc’s libstdc++ for some low-level features such as exception objects, rtti and memory allocation.
Extensive unit tests.
This is a dependency package providing the default LLVM C++ Standard library.
Installed size: 10 KB
How to install: sudo apt install libc++1
libc++abi-dev
libc++abi is another implementation of low level support for a standard C++ library.
Features and Goals
Correctness as defined by the C++ standards.
Provide a portable sublayer to ease the porting of libc++
This is a dependency package providing low level support to dev LLVM C++ Standard library.
Installed size: 13 KB
How to install: sudo apt install libc++abi-dev
libc++abi1
libc++abi is another implementation of low level support for a standard C++ library.
Features and Goals
Correctness as defined by the C++ standards.
Provide a portable sublayer to ease the porting of libc++
This is a dependency package providing low level support to LLVM C++ Standard library.
Installed size: 10 KB
How to install: sudo apt install libc++abi1
libclang-cpp-dev
Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the default Clang C++ library.
Installed size: 10 KB
How to install: sudo apt install libclang-cpp-dev
libclang-dev
Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the default libclang libraries and headers.
Installed size: 10 KB
How to install: sudo apt install libclang-dev
libclang-rt-dev
This package provides various libraries:
builtins - Simple libraries that provide implementation of the low-level target-specific hooks required by code generation and other runtime components.
sanitizer runtimes - AddressSanitizer, ThreadSanitizer, UndefinedBehaviorSanitizer, MemorySanitizer, LeakSanitizer DataFlowSanitizer, etc
profile - Library which is used to collect coverage information.
This is a dependency package providing the default compiler-rt libraries and headers.
Installed size: 10 KB
How to install: sudo apt install libclang-rt-dev
libclang-rt-dev-wasm32
Provides the compiler-rt builtins for WebAssembly 32 bits
This is a dependency package providing the default libclang wasm32 library.
Installed size: 10 KB
How to install: sudo apt install libclang-rt-dev-wasm32
libclang-rt-dev-wasm64
Provides the compiler-rt builtins for WebAssembly 64 bits
This is a dependency package providing the default libclang wasm64 library.
Installed size: 10 KB
How to install: sudo apt install libclang-rt-dev-wasm64
libclang1
Clang project is a C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the default clang libraries.
The C Interface to Clang provides a relatively small API that exposes facilities for parsing source code into an abstract syntax tree (AST), loading already-parsed ASTs, traversing the AST, associating physical source locations with elements within the AST, and other facilities that support Clang-based development tools.
Installed size: 10 KB
How to install: sudo apt install libclang1
liblld-dev
LLD is a new, high-performance linker. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project.
This is a dependency package providing the default liblld-dev package.
Installed size: 12 KB
How to install: sudo apt install liblld-dev
liblldb-dev
LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler.
This package provides the header files to build extension over lldb.
Installed size: 14 KB
How to install: sudo apt install liblldb-dev
libllvm-ocaml-dev
The Low-Level Virtual Machine (LLVM) is a collection of libraries and tools that make it easy to build compilers, optimizers, Just-In-Time code generators, and many other compiler-related programs.
This is a dependency package providing the default bindings for OCaml.
Installed size: 15 KB
How to install: sudo apt install libllvm-ocaml-dev
libomp-dev
The runtime is the part of the OpenMP implementation that your code is linked against, and that manages the multiple threads in an OpenMP program while it is executing.
This is a dependency package providing the default LLVM OpenMP dev package.
Installed size: 10 KB
How to install: sudo apt install libomp-dev
libomp5
The runtime is the part of the OpenMP implementation that your code is linked against, and that manages the multiple threads in an OpenMP program while it is executing.
This is a dependency package providing the default LLVM OpenMP runtime.
Installed size: 10 KB
How to install: sudo apt install libomp5
lld
LLD is a new, high-performance linker. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project.
This is a dependency package providing the lld linker.
Installed size: 19 KB
How to install: sudo apt install lld
ld.lld
ELF linker from the LLVM project
lld
ELF linker from the LLVM project
lld-link
wasm-ld
lldb
LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler.
This is a dependency package providing the default version of lldb.
Installed size: 17 KB
How to install: sudo apt install lldb
lldb
Manual page for lldb 14
lldb-argdumper
lldb-server
llvm
The Low-Level Virtual Machine (LLVM) is a collection of libraries and tools that make it easy to build compilers, optimizers, Just-In-Time code generators, and many other compiler-related programs.
This is a dependency package providing the default llvm package.
Installed size: 109 KB
How to install: sudo apt install llvm
bugpoint
Automatic test case reduction tool
dsymutil
Manipulate archived DWARF debug symbol files
llc
LLVM static compiler
llvm-PerfectShuffle
llvm-addr2line
A drop-in replacement for addr2line
llvm-ar
LLVM archiver
llvm-as
LLVM assembler
llvm-bcanalyzer
LLVM bitcode analyzer
llvm-c-test
llvm-cat
llvm-cfi-verify
llvm-config
Print LLVM compilation options
llvm-cov
Emit coverage information
llvm-cvtres
llvm-cxxdump
llvm-cxxfilt
LLVM symbol name demangler
llvm-diff
LLVM structural ‘diff’
llvm-dis
LLVM disassembler
llvm-dlltool
llvm-dwarfdump
Manual page for llvm-dwarfdump 14
llvm-dwp
llvm-exegesis
LLVM Machine Instruction Benchmark
Extract a function from an LLVM module
llvm-lib
LLVM lib.exe compatible library tool
llvm-link
LLVM bitcode linker
llvm-lto
llvm-lto2
llvm-mc
Manual page for llvm-mc 14
llvm-mca
LLVM Machine Code Analyzer
llvm-mt
llvm-nm
List LLVM bitcode and object file’s symbol table
llvm-objcopy
Object copying and editing tool
llvm-objdump
Manual page for llvm-objdump 14
llvm-opt-report
llvm-pdbutil
PDB File forensics and diagnostics
llvm-profdata
Profile data tool
llvm-ranlib
Manual page for llvm-ranlib 14
llvm-rc
llvm-readelf
GNU-style LLVM Object Reader
llvm-readobj
LLVM Object Reader
llvm-reduce
llvm-rtdyld
Manual page for llvm-rtdyld 14
llvm-size
Manual page for llvm-size 14
llvm-split
llvm-stress
Generate random .ll files
llvm-strings
Print strings
llvm-strip
Object stripping tool
llvm-symbolizer
Convert addresses into source code locations
llvm-tblgen
Target Description to C++ Code for LLVM
llvm-undname
llvm-xray
obj2yaml
opt
LLVM optimizer
sanstats
verify-uselistorder
yaml2obj
llvm-dev
The Low-Level Virtual Machine (LLVM) is a collection of libraries and tools that make it easy to build compilers, optimizers, Just-In-Time code generators, and many other compiler-related programs.
This is a dependency package providing the default libraries and headers.
Installed size: 25 KB
How to install: sudo apt install llvm-dev
llvm-runtime
The Low-Level Virtual Machine (LLVM) is a collection of libraries and tools that make it easy to build compilers, optimizers, Just-In-Time code generators, and many other compiler-related programs.
This is a dependency package providing the default bytecode interpreter.
Installed size: 15 KB
How to install: sudo apt install llvm-runtime
lli
Manual page for lli 14
python3-clang
Clang project is a C, C++, Objective C and Objective C++ front-end based on the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler Collection (GCC).
Clang implements all of the ISO C++ 1998, 11 and 14 standards and also provides most of the support of C++17.
This is a dependency package providing the Python binding to Clang.
Installed size: 13 KB
How to install: sudo apt install python3-clang
python3-lldb
LLDB is a next generation, high-performance debugger. It is built as a set of reusable components which highly leverage existing libraries in the larger LLVM Project, such as the Clang expression parser and LLVM disassembler.
This is a dependency package providing the Python binding to lldb.
Installed size: 13 KB
How to install: sudo apt install python3-lldb
Updated on: 2023-Mar-08
Last updated
Was this helpful?