LLVM Debian/Ubuntu nightly packages

The goal is to provide Debian and Ubuntu nightly packages ready to be installed with minimal impact on the distribution.
Packages are available for amd64, i386 (except for recent Ubuntu) and S390X. This for both the stable, old-stable and development branches (currently 12, 13 and 14).

Packages are built using stage2 and extremely similar to the one shipping in Debian & Ubuntu.

The packages provide LLVM + Clang + compiler-rt + polly + LLDB + LLD + libFuzzer + libc++ + libc++abi + openmp + libclc + libunwind

Aug 01st 2021 - Snapshot becomes 14, branch 13 created
Aug 01st 2021 - libunwind packages are generated (libunwind-XX & libunwind-XX-dev)
Jul 25th 2021 - Packages are tested against the LLVM integration test suite
May 10th 2021 - Debian strech disabled (quite old). If you are still using, mail me
May 01st 2021 - libclc packages generated from 12. Thanks to Timo Aaltonen
Apr 25th 2021 - S390X support added
Mar 28th 2021 - Ubuntu Xenial (16.04) disabled (EOL)
Feb 01st 2021 - Snapshot becomes 13, branch 12 created
Feb 01st 2021 - Debian Bullseye (11) added
Nov 01st 2020 - Ubuntu Groovy (20.10) & Hirsute (21.04) support
Nov 01st 2020 - Ubuntu Eoan disabled (EOL)
Jul 15th 2020 - Snapshot becomes 12, branch 11 created
Apr 14th 2020 - Ubuntu Disco disabled (EOL)
Apr 06th 2020 - Ubuntu Focal (20.04) support
Jan 23th 2020 - Snapshot becomes 11, branch 10 created
Jan 19th 2020 - Ubuntu Cosmic disabled (EOL)
Oct 30th 2019 - Ubuntu Eoan (19.10) support
Aug 20th 2019 - Ubuntu Trusty disabled (EOL)
Aug 01st 2019 - Snapshot becomes 10, branch 9 created
Apr 07th 2019 - Debian buster (10) added
Apr 06th 2019 - Debian Jessie (oldstable) no longer maintained
Jan 19th 2019 - Branch 8 created
Jan 19th 2019 - Ubuntu Disco (19.04) support
Jan 19th 2019 - Artful jobs disabled (but packages still available)
Automatic installation script
For convenience there is an automatic installation script available that installs LLVM for you.
To install the latest stable version:
bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)"

To install a specific version of LLVM:
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh <version number>
Buster (Debian 10 - oldstable) - Last update : Sat, 13 Nov 2021 19:18:19 UTC / Revision: 20211113115108+8ed8d370880b
deb http://apt.llvm.org/buster/ llvm-toolchain-buster main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster main
# 12 
deb http://apt.llvm.org/buster/ llvm-toolchain-buster-12 main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-12 main
# 13 
deb http://apt.llvm.org/buster/ llvm-toolchain-buster-13 main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-13 main
Bullseye (Debian 11 - stable) - Last update : Thu, 02 Dec 2021 10:57:59 UTC / Revision: 20211202071849+758d54b462ff
deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
# 12 
deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-12 main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-12 main
# 13 
deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-13 main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-13 main
sid (unstable) - Last update : Thu, 02 Dec 2021 14:58:39 UTC / Revision: 20211202111151+2de5f39e546d
deb http://apt.llvm.org/unstable/ llvm-toolchain main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain main
# 12 
deb http://apt.llvm.org/unstable/ llvm-toolchain-12 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-12 main
# 13 
deb http://apt.llvm.org/unstable/ llvm-toolchain-13 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-13 main

Precise, Quantal, Raring, Saucy, Utopic, Artful, Cosmic, Eoan and Trusty are no longer supported by Ubuntu. Repo remains available but not updated.

As i386 isn't supported by Ubuntu anymore, apt.llvm.org isn't either.

Bionic LTS (18.04) - Last update : Thu, 02 Dec 2021 21:55:13 UTC / Revision: 20211202063919+8270ff86a10b
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
# Needs 'sudo add-apt-repository ppa:ubuntu-toolchain-r/test' for libstdc++ with C++20 support
# 12
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main
# 13
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-13 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-13 main
Focal (20.04) LTS - Last update : Thu, 02 Dec 2021 21:31:21 UTC / Revision: 20211202052751+22d82949b091
deb http://apt.llvm.org/focal/ llvm-toolchain-focal main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal main
# 12
deb http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main
# 13
deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main

Groovy (20.10) - Last update : Thu, 02 Dec 2021 14:28:53 UTC / Revision: 20211202113948+8e757b2383c9
deb http://apt.llvm.org/groovy/ llvm-toolchain-groovy main
deb-src http://apt.llvm.org/groovy/ llvm-toolchain-groovy main
# 12
deb http://apt.llvm.org/groovy/ llvm-toolchain-groovy-12 main
deb-src http://apt.llvm.org/groovy/ llvm-toolchain-groovy-12 main
# 13
deb http://apt.llvm.org/groovy/ llvm-toolchain-groovy-13 main
deb-src http://apt.llvm.org/groovy/ llvm-toolchain-groovy-13 main
Hirsute (21.04) - Last update : Thu, 02 Dec 2021 13:06:46 UTC / Revision: 20211202104519+73c50ccf7a6b
deb http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute main
deb-src http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute main
# 12
deb http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute-12 main
deb-src http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute-12 main
# 13
deb http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute-13 main
deb-src http://apt.llvm.org/hirsute/ llvm-toolchain-hirsute-13 main
Default packages
To make sure always the most recent versions of the packages are installed, we are providing some default packages.
To install all of them (currently version 14):

apt-get install clang-format clang-tidy clang-tools clang clangd libc++-dev libc++1 libc++abi-dev libc++abi1 libclang-dev libclang1 liblldb-dev libllvm-ocaml-dev libomp-dev libomp5 lld lldb llvm-dev llvm-runtime llvm python-clang

(old-stable branch)
To retrieve the archive signature:

wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
# Fingerprint: 6084 F3CF 814B 57C1 CF12 EFD5 15CF 4D18 AF4F 7421

To install just clang, lld and lldb (12 release):

apt-get install clang-12 lldb-12 lld-12

To install all key packages:

apt-get install libllvm-12-ocaml-dev libllvm12 llvm-12 llvm-12-dev llvm-12-doc llvm-12-examples llvm-12-runtime
# Clang and co
apt-get install clang-12 clang-tools-12 clang-12-doc libclang-common-12-dev libclang-12-dev libclang1-12 clang-format-12 python-clang-12 clangd-12
# libfuzzer
apt-get install libfuzzer-12-dev
# lldb
apt-get install lldb-12
# lld (linker)
apt-get install lld-12
# libc++
apt-get install libc++-12-dev libc++abi-12-dev
# OpenMP
apt-get install libomp-12-dev
# libclc
apt-get install libclc-12-dev
# libunwind
apt-get install libunwind-12-dev

(stable branch)
To retrieve the archive signature:

wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
# Fingerprint: 6084 F3CF 814B 57C1 CF12 EFD5 15CF 4D18 AF4F 7421

To install just clang, lld and lldb (13 release):

apt-get install clang-13 lldb-13 lld-13

To install all key packages:

apt-get install libllvm-13-ocaml-dev libllvm13 llvm-13 llvm-13-dev llvm-13-doc llvm-13-examples llvm-13-runtime
# Clang and co
apt-get install clang-13 clang-tools-13 clang-13-doc libclang-common-13-dev libclang-13-dev libclang1-13 clang-format-13 python-clang-13 clangd-13
# libfuzzer
apt-get install libfuzzer-13-dev
# lldb
apt-get install lldb-13
# lld (linker)
apt-get install lld-13
# libc++
apt-get install libc++-13-dev libc++abi-13-dev
# OpenMP
apt-get install libomp-13-dev
# libclc
apt-get install libclc-13-dev
# libunwind
apt-get install libunwind-13-dev

(development branch)
To retrieve the archive signature:

wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
# Fingerprint: 6084 F3CF 814B 57C1 CF12 EFD5 15CF 4D18 AF4F 7421

We also provide meta packages to move from a major version to the other.
For example, to automatically upgrade to the current major:

apt-get install clang lld # clang-14 lld-14 can be added to automatically install the most recent version of the package.

To install just clang, lld and lldb (14 release):

apt-get install clang-14 lldb-14 lld-14

To install all key packages:

apt-get install libllvm-14-ocaml-dev libllvm14 llvm-14 llvm-14-dev llvm-14-doc llvm-14-examples llvm-14-runtime
# Clang and co
apt-get install clang-14 clang-tools-14 clang-14-doc libclang-common-14-dev libclang-14-dev libclang1-14 clang-format-14 python-clang-14 clangd-14
# libfuzzer
apt-get install libfuzzer-14-dev
# lldb
apt-get install lldb-14
# lld (linker)
apt-get install lld-14
# libc++
apt-get install libc++-14-dev libc++abi-14-dev
# OpenMP
apt-get install libomp-14-dev
# libclc
apt-get install libclc-14-dev
# libunwind
apt-get install libunwind-14-dev

Technical aspects
Packages are rebuilt against the trunk of the various LLVM projects.
They are rebuild through a Jenkins instance:


Bugs should be reported on the LLVM bug tracker (deb packages).


Twice a day, each jenkins job will checkout the debian/ directory necessary to build the packages. The repository is available on the Debian hosting infrastructure: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/. In the llvm-toolchain-*-source, the following tasks will be performed: Then, the job llvm-toolchain-X-binary will: Note that a few patches are applied over the LLVM tarballs (and should be merged upstream at some point).
With the Jenkins instance, several reports are produced:
Building the latest nightly snapshot
Building LLVM packages from source is documented in a dedicated page.

Contact: Sylvestre Ledru
Build infra by IRILL / Hosting by LLVM Foundation / CDN by Fastly