#1147573 packaging of the fuzzer libraries is broken with LLVM 21, 22 and 23

#1147573#5
Date:
2026-09-13 07:19:01 UTC
From:
To:
As seen in the vbox-tools upload to migrate from LLVM 19 to 21, the
fuzzer libraries are not used anymore (or not found) when built with
LLVM 21. You can reproduce that when building with the unversioned clang:

[...]
     LD            tests/vb2_keyblock_fuzzer
clang -o
/packages/tmp/vboot-utils-0~R106-15054.B+dfsg/build/tests/vb2_keyblock_fuzzer
-Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -pie -Xlinker 
--allow-multiple-definition -fsanitize=fuzzer 
/packages/tmp/vboot-utils-0~R106-15054.B+dfsg/build/tests/vb2_keyblock_fuzzer.o
  /packages/tmp/vboot-utils-0~R106-15054.B+dfsg/build/vboot_fw.a -lrt -luuid
/usr/bin/x86_64-linux-gnu-ld.bfd/usr/bin/x86_64-linux-gnu-ld.bfd: cannot
find : cannot find
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer.a:
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer.a:
No such file or directory
No such file or directory
/usr/bin/x86_64-linux-gnu-ld.bfd: cannot find
/usr/bin/x86_64-linux-gnu-ld.bfd: cannot find
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer_interceptors.a:
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer_interceptors.aNo
such file or directory:
No such file or directory
/usr/bin/x86_64-linux-gnu-ld.bfd/usr/bin/x86_64-linux-gnu-ld.bfd: cannot
find : cannot find
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.ubsan_standalone.a/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.ubsan_standalone.a:
: No such file or directoryNo such file or directory

/usr/bin/x86_64-linux-gnu-ld.bfd: cannot find
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer.a:
No such file or directory
/usr/bin/x86_64-linux-gnu-ld.bfd: cannot find
/usr/lib/llvm-21/lib/clang/21/lib/x86_64-pc-linux-gnu/libclang_rt.fuzzer_interceptors.a:
No such file or directory
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
make[2]: *** [Makefile:1156:
/packages/tmp/vboot-utils-0~R106-15054.B+dfsg/build/tests/cgpt_fuzzer]
Error 1
make[2]: *** Waiting for unfinished jobs....

So apparently building and shipping Debian's own libFuzzer.a is not good
enough anymore.

Two solutions here:

  - stop building the libfuzzer-N-dev package

  - Ship the libclang_rt.fuzzer.a (and maybe other) libraries.

This is seen with LLVM 21, 22 and 23.

#1147573#10
Date:
2026-09-13 18:04:45 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
llvm-toolchain-21, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1147573@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Gianfranco Costamagna <locutusofborg@debian.org> (supplier of updated llvm-toolchain-21 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Fri, 28 Aug 2026 11:47:04 +0200
Source: llvm-toolchain-21
Architecture: source
Version: 1:21.1.8-11
Distribution: unstable
Urgency: medium
Maintainer: LLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Changed-By: Gianfranco Costamagna <locutusofborg@debian.org>
Closes: 1147573
Changes:
 llvm-toolchain-21 (1:21.1.8-11) unstable; urgency=medium
 .
   [ Sylvestre Ledru ]
   * d/rules: only enable sccache if the binary actually runs
   * d/control.in: libfuzzer-X.Y-dev now depends on libclang-rt-X.Y-dev.
     -fsanitize=fuzzer links libclang_rt.fuzzer*.a (and
     libclang_rt.ubsan_standalone.a) from the compiler-rt resource
     directory, which lives in libclang-rt-X.Y-dev. As it was only a
     Recommends of libclang-common-X.Y-dev, it was not pulled into build
     chroots and the link failed. Closes: #1147573.
   * d/tests/fuzzer-test: new autopkgtest building a fuzzer with only
     libfuzzer-X.Y-dev installed, to catch this dependency issue.
   * d/debian-llvm-testsuite.bats: don't skip the libFuzzer compilation test
     when the compiler-rt libraries are missing, fail instead.
 .
   [ Gianfranco Costamagna ]
   * Commit Ubuntu patch to git
   * Skip common packages also for stonking
 .
   [ Karl Smeltzer <karl.smeltzer@canonical.com> ]
   * Add patch from Ubuntu: lldb-python-wrapper-exceptions.diff
Checksums-Sha1:
 475c67aeedc14645c9cff77d89d4128a678dd40b 15182 llvm-toolchain-21_21.1.8-11.dsc
 fff03626d7554efaa90e4bfe6566879bdabfee3d 177388 llvm-toolchain-21_21.1.8-11.debian.tar.xz
 6d726c51504bc3b2a789193f89ac88d3b7523950 37384 llvm-toolchain-21_21.1.8-11_amd64.buildinfo
Checksums-Sha256:
 a004546386cefae150f43bfd3d3ee36c04a503b558283f353f16addd3d691059 15182 llvm-toolchain-21_21.1.8-11.dsc
 62f0dbe98616e5d427a4fbd4937b39fff8e1ad23fa12f0b0c6a3d789a213c399 177388 llvm-toolchain-21_21.1.8-11.debian.tar.xz
 393df89645849555a57a3a7c5db30f9772d82de8efe831a65b387415dd9a3601 37384 llvm-toolchain-21_21.1.8-11_amd64.buildinfo
Files:
 905a5814f15465fd15553f49372859da 15182 devel optional llvm-toolchain-21_21.1.8-11.dsc
 d4ab2897c597ae95e5e21d4121bd398f 177388 devel optional llvm-toolchain-21_21.1.8-11.debian.tar.xz
 8d71ae3dbe201cf48f0aeff39a40b014 37384 devel optional llvm-toolchain-21_21.1.8-11_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEtg21mU05vsTRqVzPfmUo2nUvG+EFAmqm4JEACgkQfmUo2nUv
G+HQThAAgMTqqJ5k7YDb9RpgWj9fFyDglOCfzU0M778aC8DFmLJOTmIw9Hmt5hCd
/BeEqkAtp91zcZBOX8lLIrA8A90w3mSVlXO9f1raUALR0WqHv7joBVUtVWffcJrb
XPpwSUh7nraua5+3hOUMTAFzIUicyjCS/fJ6Qdaj33n7LJFC0gzh9DBEfgRJ/0vR
cyjKiI7crwXXWRPML/BSyvuSOxbcBCqCFULWvD9fxQb8Es+/Em8u7KGC/l0xiujj
IlyrGTS22gssheeX//16+xlwUVBucHTN1brlF4Q7cpKq7VWmNLaAwHhSxc4wHgb2
9pbkZVLrLI3ts+OGNjPqujUXrgqVzhZjl2iPlkXU2J72ER+fUe8GjyONkjXOxEuS
Uf34YlH7EQ4qMTqjhvUMTcN0bQW5eautUULPXbRYyWqdZijX5roSdP/mU6aN04K3
/pnmUoPxl8JbQxE3DDqmHbQz2iFnJpTua0A+kzxuEYoUhc8d56WZetq5/AXnvu+0
2d8I/VDKnm/5WZSEOjr8n4KS3uDdPF0b9K6xcs52LWhBUqGUSgKDPyo3rxsmYoYE
aHQe6uZ+AKE4Q/gEumugD7dDfr+tGG/vh+T6Ncz+7YwbExwxzKhJs4gdQdojgQ4O
cY1IpFMgRXFRWGJro5V1NU+hAzYjVas1UXiSaxFqbN41irFHZ6E=
=L7tA
-----END PGP SIGNATURE-----

#1147573#15
Date:
2026-09-14 07:22:57 UTC
From:
To:
the obsolete libFuzzer.a should be dropped, corresponding patch is on
the 21 branch in the VCS.

#1147573#24
Date:
2026-09-14 07:31:26 UTC
From:
To:
Removing the legacy fuzzer.a is a different issue, please open a different bug.
S




Le lundi 14 septembre 2026 à 09:28, Matthias Klose <doko@debian.org> a écrit :

#1147573#29
Date:
2026-09-14 09:34:08 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
llvm-toolchain-21, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1147573@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Matthias Klose <doko@debian.org> (supplier of updated llvm-toolchain-21 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Mon, 14 Sep 2026 09:20:26 +0200
Source: llvm-toolchain-21
Architecture: source
Version: 1:21.1.8-12
Distribution: unstable
Urgency: medium
Maintainer: LLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Changed-By: Matthias Klose <doko@debian.org>
Closes: 1147573
Changes:
 llvm-toolchain-21 (1:21.1.8-12) unstable; urgency=medium
 .
   * Stop building, shipping and testing the obsolete libFuzzer.a.
     Closes: #1147573.
Checksums-Sha1:
 41ef9f7af4c405d5f07bacbe561257d040e3a7ae 15207 llvm-toolchain-21_21.1.8-12.dsc
 f0cf9b31167603b857f5983a0645b80bb93bd94a 177324 llvm-toolchain-21_21.1.8-12.debian.tar.xz
 a72a3cf6c94f064c3efc4daeec4eb7c33d89fec0 13744 llvm-toolchain-21_21.1.8-12_source.buildinfo
Checksums-Sha256:
 4471c9a73e5c8ed1366f33042c3a4b2e98bfc4714b064e130fa2f9ae0f71e659 15207 llvm-toolchain-21_21.1.8-12.dsc
 e48dab757dbfe68f0a8c7c75b467605426b8279daf6ce6c62ca3d23b6e714819 177324 llvm-toolchain-21_21.1.8-12.debian.tar.xz
 4ce90a6eb65f697b103f2a602ce8f5a0e1b1d450996c5fc0f27651411285fbba 13744 llvm-toolchain-21_21.1.8-12_source.buildinfo
Files:
 d663c41b60c560825a8626ba32630e62 15207 devel optional llvm-toolchain-21_21.1.8-12.dsc
 bb2f9c4775e1396190d461fb97280527 177324 devel optional llvm-toolchain-21_21.1.8-12.debian.tar.xz
 60f1bdc91787f61446bff6a1e6dbcc5f 13744 devel optional llvm-toolchain-21_21.1.8-12_source.buildinfo
-----BEGIN PGP SIGNATURE-----

iQJEBAEBCgAuFiEE1WVxuIqLuvFAv2PWvX6qYHePpvUFAmqnuw4QHGRva29AZGVi
aWFuLm9yZwAKCRC9fqpgd4+m9frnEACl+9IMxO86fCFSoCa7lrNNewMFBL17D0ox
qFQN7f2FcXzLV4TU3PK9v7UmKDllXk6Sy501xtRQPgR2swVIT79mn8MjGD+EyU00
fCjTQgG2sNJfbYiGXsraMT4ytIWUoGxL0zZlNfQ4H8/8xfRnj1ZZeMmurM1RHXNQ
jhdbSj6NBoFsj1DV6eWv5ooc/Qfd4ndM7qldpcX4tMyGNvMjHI5jrryblke/j40i
tTu8AXCnpll01betl+uA1FQDxYofOcH8VNO8TCfW0uJL7tfKlJA3+PRvwEC9e+LC
ebkFjMZ0xzFTkwe/CGGRVDhzPzy3ZjRtUYPzhJlDP02C8ixrvI3AS+z4MEkZgH6E
7MTIFfi8ist8ly1gNcamaUhyCZJWAam4tiYyctrqXuAwQuVn79Ga7DA60ZOcBuLy
b0xMv4pAhZdHFOMoomW2TP6ITLVsRMI+xFf6WbKisXQfVW8+cE+4bbLKDDoM4kxE
AFO5vMihaW7WkF+V29kj5uqp0oPxALezmPU9MmVzD7VEQ/CRvkRtXuUxPPNfl5vW
/o6vpjmcwikR/vAiJ6UjaWUMKBZuuHQ8uEy7W21KrwN3q+MXWkCshBksCUlcLUSk
HqVQ6CziNEvDlrgbfBICDLzlfVEM8bc1+4woINOxKwjSefWR2ZztI2V4f3jd3u11
9+/bGKRRbQ==
=DbdF
-----END PGP SIGNATURE-----