Discussion:
Bug#1100603: rusttup: should not be built on armel
Add Reply
Matthias Geiger
2025-03-15 22:10:01 UTC
Reply
Permalink
Source: rustup
Severity: normal
X-Debbugs-Cc: debian-***@lists.debian.org, ***@debian.org
User: debian-***@lists.debian.org
Usertags: armel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

rustup does not know about / support armel, and fails to build there:
error: failed to run custom build command for `rustup v1.27.1 (/build/reproducible-path/rustup-1.27.1)`

Caused by:
process didn't exit successfully: `CARGO=/usr/bin/cargo CARGO_CFG_FEATURE=curl-backend,default,reqwest-backend,reqwest-default-tls CARGO_CFG_PANIC=unwind CARGO_CFG_TARGET_ABI=eabi CARGO_CFG_TARGET_ARCH=arm CARGO_CFG_TARGET_ENDIAN=little CARGO_CFG_TARGET_ENV=gnu CARGO_CFG_TARGET_FAMILY=unix CARGO_CFG_TARGET_HAS_ATOMIC=16,32,8,ptr CARGO_CFG_TARGET_OS=linux CARGO_CFG_TARGET_POINTER_WIDTH=32 CARGO_CFG_TARGET_VENDOR=unknown CARGO_CFG_UNIX='' CARGO_ENCODED_RUSTFLAGS='-Cdebuginfo=2-Cstrip=none--cap-lintswarn-Clinker=arm-linux-gnueabi-gcc-Clink-arg=-Wl,-z,relro--remap-path-prefix/build/reproducible-path/rustup-1.27.1=/usr/share/cargo/registry/rustup-1.27.1--remap-path-prefix/build/reproducible-path/rustup-1.27.1/debian/cargo_registry=/usr/share/cargo/registry' CARGO_FEATURE_CURL_BACKEND=1 CARGO_FEATURE_DEFAULT=1 CARGO_FEATURE_REQWEST_BACKEND=1 CARGO_FEATURE_REQWEST_DEFAULT_TLS=1 CARGO_MANIFEST_DIR=/build/reproducible-path/rustup-1.27.1 CARGO_MANIFEST_PATH=/build/reproducible-path/rustup-1.27.1/Cargo.toml CARGO_PKG_AUTHORS='' CARGO_PKG_DESCRIPTION='Manage multiple rust installations with ease' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/rustup' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=rustup CARGO_PKG_README=README.md CARGO_PKG_REPOSITORY='https://github.com/rust-lang/rustup' CARGO_PKG_RUST_VERSION='' CARGO_PKG_VERSION=1.27.1 CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_MINOR=27 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' DEBUG=true HOST=armv5te-unknown-linux-gnueabi LD_LIBRARY_PATH='/build/reproducible-path/rustup-1.27.1/target/debug/deps:/build/reproducible-path/rustup-1.27.1/target/debug:/usr/lib/rustlib/armv5te-unknown-linux-gnueabi/lib' NUM_JOBS=8 OPT_LEVEL=0 OUT_DIR=/build/reproducible-path/rustup-1.27.1/target/armv5te-unknown-linux-gnueabi/debug/build/rustup-a5b3626d4856752e/out PROFILE=debug RUSTC=rustc RUSTDOC=rustdoc TARGET=armv5te-unknown-linux-gnueabi /build/reproducible-path/rustup-1.27.1/target/debug/build/rustup-c5e38eee2bb86dfe/build-script-build` (signal: 6, SIGABRT: process abort signal)
--- stdout
cargo:rerun-if-env-changed=RUSTUP_OVERRIDE_BUILD_TRIPLE
cargo:rerun-if-env-changed=TARGET

--- stderr
Unable to parse target 'armv5te-unknown-linux-gnueabi' as a PartialTargetTriple
If you are attempting to bootstrap a new target you may need to adjust the
permitted values found in src/dist/triple.rs
warning: build failed, waiting for other jobs to finish...

Thus, it should not be built there.

best,

werdahias


- -- System Information:
Debian Release: trixie/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.12.17-amd64 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: OpenRC (via /run/openrc), PID 1: init
LSM: AppArmor: enabled
John Paul Adrian Glaubitz
2025-03-16 09:30:01 UTC
Reply
Permalink
Hello Matthiasm
Post by Matthias Geiger
error: failed to run custom build command for `rustup v1.27.1 (/build/reproducible-path/rustup-1.27.1)`
process didn't exit successfully: `CARGO=/usr/bin/cargo CARGO_CFG_FEATURE=curl-backend,default,reqwest-backend,reqwest-default-tls CARGO_CFG_PANIC=unwind CARGO_CFG_TARGET_ABI=eabi CARGO_CFG_TARGET_ARCH=arm CARGO_CFG_TARGET_ENDIAN=little CARGO_CFG_TARGET_ENV=gnu CARGO_CFG_TARGET_FAMILY=unix CARGO_CFG_TARGET_HAS_ATOMIC=16,32,8,ptr CARGO_CFG_TARGET_OS=linux CARGO_CFG_TARGET_POINTER_WIDTH=32 CARGO_CFG_TARGET_VENDOR=unknown CARGO_CFG_UNIX='' CARGO_ENCODED_RUSTFLAGS='-Cdebuginfo=2-Cstrip=none--cap-lintswarn-Clinker=arm-linux-gnueabi-gcc-Clink-arg=-Wl,-z,relro--remap-path-prefix/build/reproducible-path/rustup-1.27.1=/usr/share/cargo/registry/rustup-1.27.1--remap-path-prefix/build/reproducible-path/rustup-1.27.1/debian/cargo_registry=/usr/share/cargo/registry' CARGO_FEATURE_CURL_BACKEND=1 CARGO_FEATURE_DEFAULT=1 CARGO_FEATURE_REQWEST_BACKEND=1 CARGO_FEATURE_REQWEST_DEFAULT_TLS=1 CARGO_MANIFEST_DIR=/build/reproducible-path/rustup-1.27.1 CARGO_MANIFEST_PATH=/build/reproducible-path/rustup-1.27.1/Cargo.toml CARGO_PKG_AUTHORS='' CARGO_PKG_DESCRIPTION='Manage multiple rust installations with ease' CARGO_PKG_HOMEPAGE='https://github.com/rust-lang/rustup' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=rustup CARGO_PKG_README=README.md CARGO_PKG_REPOSITORY='https://github.com/rust-lang/rustup' CARGO_PKG_RUST_VERSION='' CARGO_PKG_VERSION=1.27.1 CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_MINOR=27 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' DEBUG=true HOST=armv5te-unknown-linux-gnueabi LD_LIBRARY_PATH='/build/reproducible-path/rustup-1.27.1/target/debug/deps:/build/reproducible-path/rustup-1.27.1/target/debug:/usr/lib/rustlib/armv5te-unknown-linux-gnueabi/lib' NUM_JOBS=8 OPT_LEVEL=0 OUT_DIR=/build/reproducible-path/rustup-1.27.1/target/armv5te-unknown-linux-gnueabi/debug/build/rustup-a5b3626d4856752e/out PROFILE=debug RUSTC=rustc RUSTDOC=rustdoc TARGET=armv5te-unknown-linux-gnueabi /build/reproducible-path/rustup-1.27.1/target/debug/build/rustup-c5e38eee2bb86dfe/build-script-build` (signal: 6, SIGABRT: process abort signal)
--- stdout
cargo:rerun-if-env-changed=RUSTUP_OVERRIDE_BUILD_TRIPLE
cargo:rerun-if-env-changed=TARGET
--- stderr
Unable to parse target 'armv5te-unknown-linux-gnueabi' as a PartialTargetTriple
If you are attempting to bootstrap a new target you may need to adjust the
permitted values found in src/dist/triple.rs
warning: build failed, waiting for other jobs to finish...
Thus, it should not be built there.
This has actually been fixed in the latest upstream snapshot of rustup:

Compiling reqwest v0.12.12
Compiling rustls-platform-verifier v0.5.0
Compiling download v1.28.1 (/home/glaubitz/rustup/download)
Finished `release` profile [optimized] target(s) in 5m 17s
(sid_armel-dchroot)***@amdahl:~/rustup$ ./target/release/rustup-init --version
rustup-init 1.28.1+10 (7870fd11d 2025-03-15)
(sid_armel-dchroot)***@amdahl:~/rustup$

It's the typical mistake of maintaining your own architecture list instead
of checking a canonical resource for that which will always have the latest
list of supported targets.

Either way, just wait for the next upstream release and this will be fixed.

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Loading...