LLVM Debian/Ubuntu nightly packages
Download

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 and i386 (except for recent Ubuntu) and for both the stable, qualification and development branches (currently 6.0, 7 and 8).

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

Debian
Jessie (Debian old stable) - Last update : Mon, 22 Oct 2018 01:29:23 UTC / Revision:
deb http://apt.llvm.org/jessie/ llvm-toolchain-jessie main
deb-src http://apt.llvm.org/jessie/ llvm-toolchain-jessie main
# 6.0 
deb http://apt.llvm.org/jessie/ llvm-toolchain-jessie-6.0 main
deb-src http://apt.llvm.org/jessie/ llvm-toolchain-jessie-6.0 main
# 7 
deb http://apt.llvm.org/jessie/ llvm-toolchain-jessie-7 main
deb-src http://apt.llvm.org/jessie/ llvm-toolchain-jessie-7 main
Stretch (Debian stable) - Last update : Mon, 22 Oct 2018 02:42:46 UTC / Revision:
deb http://apt.llvm.org/stretch/ llvm-toolchain-stretch main
deb-src http://apt.llvm.org/stretch/ llvm-toolchain-stretch main
# 6.0 
deb http://apt.llvm.org/stretch/ llvm-toolchain-stretch-6.0 main
deb-src http://apt.llvm.org/stretch/ llvm-toolchain-stretch-6.0 main
# 7 
deb http://apt.llvm.org/stretch/ llvm-toolchain-stretch-7 main
deb-src http://apt.llvm.org/stretch/ llvm-toolchain-stretch-7 main
sid (unstable) - Last update : Sun, 21 Oct 2018 03:55:12 UTC / Revision:
deb http://apt.llvm.org/unstable/ llvm-toolchain main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain main
# 6.0 
deb http://apt.llvm.org/unstable/ llvm-toolchain-6.0 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-6.0 main
# 7 
deb http://apt.llvm.org/unstable/ llvm-toolchain-7 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-7 main

Ubuntu
gcc backport (ppa) is necessary on Trusty (for libstdc++).
Precise, Quantal, Raring, Saucy and Utopic are no longer supported by Ubuntu.

Trusty (14.04) - Last update : Sun, 21 Oct 2018 20:38:00 UTC / Revision:
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty main
# 6.0 
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main
# 7 
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-7 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-7 main

# Also add the following for the appropriate libstdc++
deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu trusty main
Xenial (16.04) - Last update : Mon, 22 Oct 2018 00:44:54 UTC / Revision:
deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial main
deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial main
# 6.0
deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main
deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main
# 7
deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main
deb-src http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main
Artful (17.10) - Last update : Sun, 21 Oct 2018 22:55:23 UTC / Revision:
# i386 not available
deb http://apt.llvm.org/artful/ llvm-toolchain-artful main
deb-src http://apt.llvm.org/artful/ llvm-toolchain-artful main
# 6.0
deb http://apt.llvm.org/artful/ llvm-toolchain-artful-6.0 main
deb-src http://apt.llvm.org/artful/ llvm-toolchain-artful-6.0 main
# 7
deb http://apt.llvm.org/artful/ llvm-toolchain-artful-7 main
deb-src http://apt.llvm.org/artful/ llvm-toolchain-artful-7 main
Bionic (18.04) - Last update : Sun, 21 Oct 2018 19:43:10 UTC / Revision:
# i386 not available
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic main
# 6.0
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-6.0 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-6.0 main
# 7
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-7 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-7 main
Cosmic (18.10) - Last update : Sun, 21 Oct 2018 22:19:02 UTC / Revision:
# i386 not available
deb http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic main
deb-src http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic main
# 6.0
deb http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic-6.0 main
deb-src http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic-6.0 main
# 7
deb http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic-7 main
deb-src http://apt.llvm.org/cosmic/ llvm-toolchain-cosmic-7 main
Install
(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 (6.0 release):

apt-get install clang-6.0 lldb-6.0 lld-6.0


To install all key packages:

# LLVM
apt-get install libllvm-6.0-ocaml-dev libllvm6.0 llvm-6.0 llvm-6.0-dev llvm-6.0-doc llvm-6.0-examples llvm-6.0-runtime
# Clang and co
apt-get install clang-6.0 clang-tools-6.0 clang-6.0-doc libclang-common-6.0-dev libclang-6.0-dev libclang1-6.0 clang-format-6.0 python-clang-6.0
# libfuzzer
apt-get install libfuzzer-6.0-dev
# lldb
apt-get install lldb-6.0
# lld (linker)
apt-get install lld-6.0

Install
(qualification 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 (7 release):

apt-get install clang-7 lldb-7 lld-7


To install all key packages:

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

Install
(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-8 lld-8 can be added to automatically install the most recent version of the package.


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

apt-get install clang-8 lldb-8 lld-8


To install all key packages:

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

Technical aspects
Packages are rebuilt against the trunk of the various LLVM projects.
They are rebuild through a Jenkins instance:
https://llvm-jenkins.debian.net

Bugs

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

Workflow

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