rust plugin: fix linker on i386
Metadata
Current evaluation
Merged PR #2580 in commit 261ec5978, fixing Rust plugin i386 builds to use the available i686-linux-gnu-gcc linker.
Resolution: closed resolved
Reason: PR #2580 was merged as commit 261ec5978. Its _get_linker logic corrects the i386 linker name, preventing builds from failing because i386-linux-gnu-gcc was unavailable.
Evaluated by: mr-cal-bot
No scores available.
Issue body
On i386 environment, linker becomes `i386-linux-gnu-gcc` according to
arch_triplet. It causes the following error on build.snapcraft.io:
```
error: linker `i386-linux-gnu-gcc` not found
|
= note: No such file or directory (os error 2)
```
To fix it, I added `_get_linker` method to adjust linker name.
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `./runtests.sh static`?
- [x] Have you successfully run `./runtests.sh tests/unit`?
-----
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2580 in commit 261ec5978, fixing Rust plugin i386 builds to use the available i686-linux-gnu-gcc linker. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2580 in commit 261ec5978, fixing the Rust plugin on i386 by selecting an available linker instead of the missing i386-linux-gnu-gcc. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2580 in commit 261ec5978, fixing Rust plugin linker selection on i386 so builds avoid the unavailable i386-linux-gnu-gcc. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #2580 in commit 261ec5978, fixing the Rust plugin’s i386 linker selection so builds use an available linker instead of failing on i386-linux-gnu-gcc. | |
| qwen/qwen3.6-35b-a3b | — | — | Merged a fix for the Rust plugin linker detection on i386. The change adds a _get_linker method to correctly resolve the i386-linux-gnu-gcc compiler, resolving build failures. CLA verification was confirmed by the maintainer prior to merge. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Resolves i386 linker errors in the Rust plugin by adding a _get_linker method. CLA verification was confirmed during review, and unrelated test failures were dismissed. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcraft#1939
(confidence 96%)
Reported the same Rust i386 multiarch linker failure addressed by PR #2580.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1939 rust plugin: i386 multiarch linker error | snapcraft | closed | Closed as an off-topic support report and redirected to Launchpad/forum. The same Rust plugin i386 linker fault was later fixed by merged PR #2580 (261ec5978). | |
| #2438 rust plugin: new link for rustup | snapcraft | merged | Merged PR #2438 (commit ea6caa72b) updating the Rust plugin's rustup download link, fixing LP bug #1662960 where the plugin used an outdated rustup URL. | |
| #1467 rust plugin: new rustup | snapcraft | closed | Updated the Rust plugin’s outdated rustup download link via merged PR #2438 (commit ea6caa72b), resolving LP bug #1662960. | |
| #2538 rust plugin: fix usage of rust-channel | snapcraft | merged | Merged PR #2538 fixed Rust plugin toolchain setup by using rustup instead of the obsolete rustup.sh --channel argument; resolving commit: 4eb089546. | |
| #2170 rust plugin: fix cargo builds and run tests | snapcraft | merged | Merged as commit 4f80a1051, fixing Rust plugin Cargo builds, skipping tests during cross-compilation, and adding tests. | |
| #570 rust_plugin: multiple fixes (#560) | craft-parts | merged | Merged backport #570 (8d87e98e) of #560: the Rust plugin now removes compiler plugins from final Snaps and drops a redundant channel override. | |
| #2434 rust plugin: refactor to use the latest rustup | snapcraft | merged | Merged PR #2434 in commit 3e821ca8d, updating the Rust plugin for current rustup, sharing toolchain storage, and adopting .cargo/config. |