Cross-build of rust 1.91.0 for armv6-unknown-netbsd-eabihf fails with "found possibly newer version of crate"
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 119k
- Forks
- 16.1k
- PR merge metrics
- PR metrics pending
Description
Summary
While the cross-build on NetBSD/amd64 10.1 for armv7-unknown-netbsd-eabihf succeeded after applying the workaround from issue #148450 succeded, the build for armv6-unknown-netbsd-eabihf fails with a rather obtuse and new to me error message.
Command used
python3.12 ./x.py dist -j 40
Expected behaviour
I expected the build to succeed without any error message
Actual behaviour
The build failed with
Compiling potential_utf v0.1.3
Compiling gix-prompt v0.11.1
Compiling gix-hash v0.19.0
Compiling gix-fs v0.16.1
Compiling gix-glob v0.21.0
error[E0460]: found possibly newer version of crate `bstr` which `gix_config_value` depends on
--> /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/vendor/gix-prompt-0.11.1/src/types.rs:72:37
|
72 | .and_then(|val| gix_config_value::Boolean::try_from(val).ok())
| ^^^^^^^^^^^^^^^^
|
= note: perhaps that crate needs to be recompiled?
= note: the following crate versions were found:
crate `bstr`: /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/build/x86_64-unknown-netbsd/stage1/lib/rustlib/armv6-unknown-netbsd-eabihf/lib/libbstr-8d7eb7ea61c08201.rmeta
crate `gix_config_value`: /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/build/x86_64-unknown-netbsd/stage2-tools/armv6-unknown-netbsd-eabihf/release/deps/libgix_config_value-087ad63e7ac3453f.rmeta
error[E0460]: found possibly newer version of crate `bstr` which `gix_command` depends on
--> /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/vendor/gix-prompt-0.11.1/src/lib.rs:30:15
|
30 | match gix_command::prepare(askpass).arg(prompt).spawn() {
| ^^^^^^^^^^^
|
= note: perhaps that crate needs to be recompiled?
= note: the following crate versions were found:
crate `bstr`: /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/build/x86_64-unknown-netbsd/stage1/lib/rustlib/armv6-unknown-netbsd-eabihf/lib/libbstr-8d7eb7ea61c08201.rmeta
crate `gix_command`: /usr/pkgsrc/wip/rust191/work/rustc-1.91.0-src/build/x86_64-unknown-netbsd/stage2-tools/armv6-unknown-netbsd-eabihf/release/deps/libgix_command-1160e776be7c60d6.rmeta
Compiling icu_collections v2.0.0
Compiling icu_locale_core v2.0.0
For more information about this error, try `rustc --explain E0460`.
error: could not compile `gix-prompt` (lib) due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
Build completed unsuccessfully in 1:27:38
Why this happens for armv6hf and not for armv7hf is beyond me.
I'm looking for hints for what to look for in this case.
Bootstrap configuration (bootstrap.toml)
(empty here)
Humm, I started a build for another target architecture. The bootstrap.toml is similar to what's in #148450, except with armv6 instead of armv7.
Operating system
Host: NetBSD/amd64 10.1
HEAD
castor: {73} echo `cat work/rustc-1.91.0-src/git-commit-hash `
f8297e351a40c1439a467bbbb6879088047f50b3
castor: {74}
Basically 1.91.0 from the release tarball.
Additional context
Build Log
I think the salient details are included above. If the full build log is truly needed, it can be provided at a later date.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the reported python3.12 ./x.py dist -j 40 cross-build and the empty bootstrap.toml, then compare the armv6 configuration with the armv7 workaround from issue #148450. Trace the stage1 and stage2-tools artifacts named in the E0460 output, especially bstr, gix_config_value, and gix_command; done means the armv6-unknown-netbsd-eabihf build completes without the dependency-version errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- build-system, compilers, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100