apt.llvm.org Open in urlscan Pro
2a04:4e42:4d::561  Public Scan

Submitted URL: http://apt.llvm.org/
Effective URL: https://apt.llvm.org/
Submission: On February 27 via api from US — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

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, i386 (except for recent Ubuntu), s390x and
arm64 (aka aarch64). This for both the stable, qualification and development
branches (currently 17, 18 and 19).

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 + MLIR + BOLT + flang + wasm
support

News
For the past year (2022), the work on apt.llvm.org has been partially supported
by the OpenSSF, Google, & The Linux Foundation.
This platform serves more than 35tb of packages every month and is used by
various actors like the Linux Kernel, TensorFlow, etc and referenced more than
24k times on Github.
The main goal of this support is to improve the security and sustainability of
this platform. Previously we were running on an old rack that was no longer
supported, and sooner or later would have failed. Now we're running on a
cloud-based build platform where the cloud provider is keeping the hardware
up-to-date.
We deployed sigstore support, which makes it easier for users to verify that the
packages came from us and to detect potential malicious signatures. We even
contributed upstream to sigstore, helping future users of sigstore.
In parallel, we continued to ship new releases, enable new features (bolt, etc)
etc.

Jan 25th 2024 - Snapshot becomes 19, branch 18 created
Sep 18th 2023 - Ubuntu Mantic (23.10) enabled
Sep 14th 2022 - Ubuntu Kinetic (22.10) disabled (EOL)
Jul 26th 2023 - Snapshot becomes 18, branch 17 created
Jun 04th 2023 - Debian bookworm (12) enabled as a new distro
Mar 22nd 2023 - Ubuntu Lunar (23.04) enabled
Jan 03rd 2023 - libclang-common-X.Y-dev split into: libclang-rt-X.Y-dev,
libpolly-X.Y-dev, libclang-rt-X.Y-dev-wasm32 and libclang-rt-X.Y-dev-wasm64
Jan 03rt 2023 - Support of wasm improved with new packages:
libc++-X.Y-dev-wasm32, libc++abi-X.Y-dev-wasm32, libclang-rt-X.Y-dev-wasm32 and
libclang-rt-X.Y-dev-wasm64 (recent distros)
Jan 03rd 2023 - flang packages added

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>


To install all apt.llvm.org packages at once:

wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh <version number> all
# or
sudo ./llvm.sh all


Debian
Buster (Debian 10 - old-old-stable) - Last update : Thu, 22 Feb 2024 15:18:03
UTC / Revision: 20240222115549+f17e4151423a

deb http://apt.llvm.org/buster/ llvm-toolchain-buster main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster main
# 17 
deb http://apt.llvm.org/buster/ llvm-toolchain-buster-17 main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-17 main
# 18 
deb http://apt.llvm.org/buster/ llvm-toolchain-buster-18 main
deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster-18 main


Bullseye (Debian 11 - old-stable) - Last update : Wed, 21 Feb 2024 05:29:27 UTC
/ Revision: 20240219100934+1f57800fe6ff

deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main
# 17 
deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-17 main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-17 main
# 18 
deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-18 main
deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-18 main


Bookworm (Debian 12 - stable) - Last update : Mon, 19 Feb 2024 07:36:09 UTC /
Revision: 20240218105224+dc94eb57e39a

deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm main
deb-src http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm main
# 17 
deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-17 main
deb-src http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-17 main
# 18 
deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main
deb-src http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-18 main


Trixie / sid (unstable) - Last update : Fri, 23 Feb 2024 01:19:40 UTC /
Revision: 20240222101030+ae3e14276b71

deb http://apt.llvm.org/unstable/ llvm-toolchain main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain main
# 17 
deb http://apt.llvm.org/unstable/ llvm-toolchain-17 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-17 main
# 18 
deb http://apt.llvm.org/unstable/ llvm-toolchain-18 main
deb-src http://apt.llvm.org/unstable/ llvm-toolchain-18 main



Ubuntu
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, 22 Feb 2024 20:38:55 UTC / Revision:
20240222064029+5c24c316496e

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
# 17
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-17 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-17 main
# 18
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-18 main
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-18 main


Focal (20.04) LTS - Last update : Thu, 22 Feb 2024 19:37:37 UTC / Revision:
20240222053038+26d71d9ed56c

deb http://apt.llvm.org/focal/ llvm-toolchain-focal main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal main
# 17
deb http://apt.llvm.org/focal/ llvm-toolchain-focal-17 main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-17 main
# 18
deb http://apt.llvm.org/focal/ llvm-toolchain-focal-18 main
deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-18 main


Jammy (22.04) LTS - Last update : Thu, 22 Feb 2024 17:22:11 UTC / Revision:
20240222031214+307409a8872f

deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main
deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy main
# 17
deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main
deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main
# 18
deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main
deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main


Lunar (23.04) - Last update : Thu, 22 Feb 2024 18:29:36 UTC / Revision:
20240222042526+43f1fa99ca7d

deb http://apt.llvm.org/lunar/ llvm-toolchain-lunar main
deb-src http://apt.llvm.org/lunar/ llvm-toolchain-lunar main
# 17
deb http://apt.llvm.org/lunar/ llvm-toolchain-lunar-17 main
deb-src http://apt.llvm.org/lunar/ llvm-toolchain-lunar-17 main
# 18
deb http://apt.llvm.org/lunar/ llvm-toolchain-lunar-18 main
deb-src http://apt.llvm.org/lunar/ llvm-toolchain-lunar-18 main


Mantic (23.10) - Last update : Thu, 22 Feb 2024 22:42:22 UTC / Revision:
20240222083539+66f6929fec3a

deb http://apt.llvm.org/mantic/ llvm-toolchain-mantic main
deb-src http://apt.llvm.org/mantic/ llvm-toolchain-mantic main
# 17
deb http://apt.llvm.org/mantic/ llvm-toolchain-mantic-17 main
deb-src http://apt.llvm.org/mantic/ llvm-toolchain-mantic-17 main
# 18
deb http://apt.llvm.org/mantic/ llvm-toolchain-mantic-18 main
deb-src http://apt.llvm.org/mantic/ llvm-toolchain-mantic-18 main


default_pkg
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 19):

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
python3-clang

install_stable
Install
(stable branch)
To retrieve the archive signature:

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


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

apt-get install clang-17 lldb-17 lld-17


To install all key packages:


# LLVM
apt-get install libllvm-17-ocaml-dev libllvm17 llvm-17 llvm-17-dev llvm-17-doc
llvm-17-examples llvm-17-runtime
# Clang and co
apt-get install clang-17 clang-tools-17 clang-17-doc libclang-common-17-dev
libclang-17-dev libclang1-17 clang-format-17 python3-clang-17 clangd-17
clang-tidy-17
# compiler-rt
apt-get install libclang-rt-17-dev
# polly
apt-get install libpolly-17-dev
# libfuzzer
apt-get install libfuzzer-17-dev
# lldb
apt-get install lldb-17
# lld (linker)
apt-get install lld-17
# libc++
apt-get install libc++-17-dev libc++abi-17-dev
# OpenMP
apt-get install libomp-17-dev
# libclc
apt-get install libclc-17-dev
# libunwind
apt-get install libunwind-17-dev
# mlir
apt-get install libmlir-17-dev mlir-17-tools
# bolt
apt-get install libbolt-17-dev bolt-17
# flang
apt-get install flang-17
# wasm support
apt-get install libclang-rt-17-dev-wasm32 libclang-rt-17-dev-wasm64
libc++-17-dev-wasm32 libc++abi-17-dev-wasm32 libclang-rt-17-dev-wasm32
libclang-rt-17-dev-wasm64

install_qualification
Install
(qualification branch)
To retrieve the archive signature:

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


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

apt-get install clang-18 lldb-18 lld-18


To install all key packages:


# LLVM
apt-get install libllvm-18-ocaml-dev libllvm18 llvm-18 llvm-18-dev llvm-18-doc
llvm-18-examples llvm-18-runtime
# Clang and co
apt-get install clang-18 clang-tools-18 clang-18-doc libclang-common-18-dev
libclang-18-dev libclang1-18 clang-format-18 python3-clang-18 clangd-18
clang-tidy-18
# compiler-rt
apt-get install libclang-rt-18-dev
# polly
apt-get install libpolly-18-dev
# libfuzzer
apt-get install libfuzzer-18-dev
# lldb
apt-get install lldb-18
# lld (linker)
apt-get install lld-18
# libc++
apt-get install libc++-18-dev libc++abi-18-dev
# OpenMP
apt-get install libomp-18-dev
# libclc
apt-get install libclc-18-dev
# libunwind
apt-get install libunwind-18-dev
# mlir
apt-get install libmlir-18-dev mlir-18-tools
# bolt
apt-get install libbolt-18-dev bolt-18
# flang
apt-get install flang-18
# wasm support
apt-get install libclang-rt-18-dev-wasm32 libclang-rt-18-dev-wasm64
libc++-18-dev-wasm32 libc++abi-18-dev-wasm32 libclang-rt-18-dev-wasm32
libclang-rt-18-dev-wasm64

install_dev
Install
(development branch)
To retrieve the archive signature:

wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
# or
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | sudo tee
/etc/apt/trusted.gpg.d/apt.llvm.org.asc
# 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-19 lld-19 can be added to automatically
install the most recent version of the package.


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

apt-get install clang-19 lldb-19 lld-19


To install all key packages:


# LLVM
apt-get install libllvm-19-ocaml-dev libllvm19 llvm-19 llvm-19-dev llvm-19-doc
llvm-19-examples llvm-19-runtime
# Clang and co
apt-get install clang-19 clang-tools-19 clang-19-doc libclang-common-19-dev
libclang-19-dev libclang1-19 clang-format-19 python3-clang-19 clangd-19
clang-tidy-19
# compiler-rt
apt-get install libclang-rt-19-dev
# polly
apt-get install libpolly-19-dev
# libfuzzer
apt-get install libfuzzer-19-dev
# lldb
apt-get install lldb-19
# lld (linker)
apt-get install lld-19
# libc++
apt-get install libc++-19-dev libc++abi-19-dev
# OpenMP
apt-get install libomp-19-dev
# libclc
apt-get install libclc-19-dev
# libunwind
apt-get install libunwind-19-dev
# mlir
apt-get install libmlir-19-dev mlir-19-tools
# bolt
apt-get install libbolt-19-dev bolt-19
# flang
apt-get install flang-19
# wasm support
apt-get install libclang-rt-19-dev-wasm32 libclang-rt-19-dev-wasm64
libc++-19-dev-wasm32 libc++abi-19-dev-wasm32 libclang-rt-19-dev-wasm32
libclang-rt-19-dev-wasm64

Verification using sigstore
Source, Debian tarballs and dsc files can be verified using sigstore/rekor.
This can be done with "rekor verify":

file="llvm-toolchain-10_10.0.1~%2b%2b20210327072807%2bef32c611aa21-1~exp1~20210327183412.212.dsc"
url="https://apt.llvm.org/unstable/pool/main/l/llvm-toolchain-10/$file"
sig_file="$url.asc"
wget --quiet https://apt.llvm.org/sigstore.public.key
./rekor verify --rekor_server https://rekor.sigstore.dev --signature $sig_file
--public-key sigstore.public.key --artifact $url
echo $?



Or with "rekor search":

file="llvm-toolchain-10_10.0.1~++20210327072807+ef32c611aa21.orig.tar.xz"
url="https://apt.llvm.org/unstable/pool/main/l/llvm-toolchain-10/$file"
wget --quiet $url
sha=$(sha256sum $file|awk '{print $1}')
./rekor search --sha sha256:$sha --rekor_server https://rekor.sigstore.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 (label: packaging).


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/.
Sources of this page, llvm.sh and others scripts are available on github:
https://github.com/opencollab/llvm-jenkins.debian.net/
In the llvm-toolchain-*-source, the following tasks will be performed:
 * upstream sources will be checkout
 * The tarball will be created. It is named:
   llvm-toolchain-X_X.Y.Z~++DATE+UPSTREAM_COMMIT_HASH.orig.tar.xz
 * Debian .dsc package description is created
 * Start the jenkins job llvm-toolchain-X-binary

Then, the job llvm-toolchain-X-binary will:
 * Create a chroot using cowbuilder or update it is already existing
 * Build all the packages
 * Launch lintian, the Debian static analyzer
 * Publish the result on the LLVM repository

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:
 * Scan build report
 * Coverity reports

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