[Pkg-rust-maintainers] Bug#1097836: rustc: ftbfs with GCC-15

Matthias Klose doko at debian.org
Mon Feb 17 17:52:00 GMT 2025


Package: src:rustc
Version: 1.84.0+dfsg1-2
Severity: important
Tags: sid forky
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/rustc_1.84.0+dfsg1-2_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
install -d /build/reproducible-path/rustc-1.84.0+dfsg1/debian/tmp/usr/share/doc/cargo
cp -r /build/reproducible-path/rustc-1.84.0+dfsg1/build/x86_64-unknown-linux-gnu/compiler-doc /build/reproducible-path/rustc-1.84.0+dfsg1/debian/tmp/usr/share/doc/cargo/reference
# Brute force to remove privacy-breach-logo lintian warning.
# We could have updated the upstream sources but it would complexify
# the rebase
find /build/reproducible-path/rustc-1.84.0+dfsg1/debian/tmp \( -iname '*.html' -empty -o -name .lock -o -name '*.inc' \) -delete;
# mv cargo book to cargo-docs
mv /build/reproducible-path/rustc-1.84.0+dfsg1/debian/tmp/usr/share/doc/docs/html/cargo /build/reproducible-path/rustc-1.84.0+dfsg1/debian/tmp/usr/share/doc/cargo/book
# Remove Cargo made package cache
rm -vf /build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.package-cache
removed '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.package-cache'
rm -vf /build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.package-cache-mutate
removed '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.package-cache-mutate'
rm -vf /build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.global-cache
removed '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/cargo/.global-cache'
make[1]: Leaving directory '/build/reproducible-path/rustc-1.84.0+dfsg1'
   debian/rules override_dh_install-indep
make[1]: Entering directory '/build/reproducible-path/rustc-1.84.0+dfsg1'
dh_install
rm -f -rf debian/rust-src/usr/src/rustc-1.84.0/src/bootstrap/bootstrap.pyc debian/rust-src/usr/src/rustc-1.84.0/src/bootstrap/__pycache__ debian/rust-src/usr/src/rustc-1.84.0/src/etc/__pycache__/
mv debian/rust-src/usr/src/rustc-1.84.0/library/Cargo.lock.orig \
	debian/rust-src/usr/src/rustc-1.84.0/library/Cargo.lock
# Get rid of lintian warnings
find debian/rust-src/usr/src/rustc-1.84.0 -type f \
	\( -name .gitignore \
	-o -name 'LICENSE*' \
	-o -name 'LICENCE' \
	-o -name 'license' \
	-o -name 'COPYING*' \
	-o -name '.eslintrc.js' \
	\) -delete
# Remove files that autoload remote resources, caught by lintian
rm -f -rf debian/rust-src/usr/src/rustc-*/vendor/cssparser-*/docs/*.html
rm -f -rf debian/rust-src/usr/src/rustc-*/vendor/kuchiki-*/docs/*.html
rm -f -rf debian/rust-src/usr/src/rustc-*/vendor/url-*/docs/*.html
rm -f -rf debian/rust-src/usr/src/rustc-*/vendor/xz2-*/.gitmodules
make[1]: Leaving directory '/build/reproducible-path/rustc-1.84.0+dfsg1'
   dh_install -Nlibstd-rust-dev-wasm32 -Nrust-gdb -Nrust-lldb -Nrust-doc -Nrust-src -Nrust-all -Ncargo-doc
   debian/rules override_dh_installdocs
make[1]: Entering directory '/build/reproducible-path/rustc-1.84.0+dfsg1'
dh_installdocs -X.tex -X.aux -X.log -X.out -X.toc
dh_installdocs: warning: Cannot auto-detect main package for rust-doc.  If the default is wrong, please use --doc-main-package
cp: error copying 'html/core/arch/x86_64/index.html' to '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/core/arch/x86_64/index.html': No space left on device
cp: error copying 'html/core/arch/x86_64/sidebar-items1.84.0.js' to '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/core/arch/x86_64/sidebar-items1.84.0.js': No space left on device
cp: error copying 'html/core/arch/x86_64cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: cannot make directory '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/unstable-book': No space left on device
cp: error copying 'html/version_info.html' to '/build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc/html/version_info.html': No space left on device
dh_installdocs: error: cd './debian/tmp/usr/share/doc/docs/html/..' && find 'html' \( -type f -or -type l \) -and ! -empty -and ! \( -regex .\*\\.tex.\* -or -regex .\*\\.aux.\* -or -regex .\*\\.log.\* -or -regex .\*\\.out.\* -or -regex .\*\\.toc.\* \) -print0 | LC_ALL=C sort -z | xargs -0 -I {} cp --reflink=auto --parents -dp {} /build/reproducible-path/rustc-1.84.0+dfsg1/debian/rust-doc/usr/share/doc/rust-doc returned exit code 123
make[1]: *** [debian/rules:515: override_dh_installdocs] Error 255
make[1]: Leaving directory '/build/reproducible-path/rustc-1.84.0+dfsg1'
make: *** [debian/rules:205: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-rust-maintainers mailing list