-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hashbrown tests fail on many platforms #115239
Comments
|
I'm also seeing this on x86_64 with the recent nightlies: https://github.com/LiveSplit/livesplit-core/actions/runs/5980989859/job/16228118339#step:7:110 Update 1: It seems like in both cases it's related to cross. The original PR mentions problems with old Update 2: cross runs |
Centos 7 used by i686-dist builder seems to use Binutils 2.27, dist-armv7 uses Binutils 2.32 and dist-various1 (so thumbv6m-none-eabi) uses Binutils 2.38.
|
hashbrown ci uses cross 0.2.5, which is the latest stable release for cross. To fix this issue with cross specifically, one can set the image used by cross to be a newer version, cross 0.2.5 images use ubuntu 16.04, we can change that with the env vars or config (see comment)
|
The diagnostic looks similar to a binutils 2.41 change I made to fix https://sourceware.org/bugzilla/show_bug.cgi?id=24784
There is incompatibility between |
This reverts commit 4410868, reversing changes made to 249595b. This causes linker failures with the binutils version used by cross (rust-lang#115239), as well as miscompilations when using the mold linker.
Ran into this in github CI today as well (e.g. https://github.com/VorpalBlade/ini-merge/actions/runs/5990039532/job/16246920034). Works fine locally on Arch though when I try to recreate it. EDIT: Managed to reproduce it locally. I was mixing up -gnu and -musl targets, my bad. |
Posted a revert at #115267. |
This is really not a great solution for projects that build binaries for releases though (like I do). To target an old enough glibc to work on all systems (e.g. CentOS/RHEL, stable Debian, etc) you need to build on a fairly old distro. And then you also get older ld etc as well. It would be great if you could tell rust & gcc (for native dependencies) to target an older glibc than the system one, that would solve a lot of issues. |
…piler-errors Revert relax_elf_relocations default change This reverts commit 4410868 (rust-lang#106511). The change caused linker failures with the binutils version used by cross (rust-lang#115239), as well as miscompilations when using the mold linker (https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/SIGILL.20in.20build-script-build.20with.20nightly-2023-08-25/near/387506479).
In GCC/Clang, #106511 is to use modern GCC/Clang style I think I should keep arguing for #106380 |
…ler-errors Revert relax_elf_relocations default change This reverts commit 4410868 (rust-lang#106511). The change caused linker failures with the binutils version used by cross (rust-lang#115239), as well as miscompilations when using the mold linker (https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/SIGILL.20in.20build-script-build.20with.20nightly-2023-08-25/near/387506479).
cc @Amanieu |
I apologize to everyone, forgot about this issue. I can state that this issue is closed and no longer relevant. @Emilgardis' suggestion (as a workaround) and @nikic's pull request fixed the issue. |
Hashbrown crate starts fail when running: test (ubuntu-latest, armv7-unknown-linux-gnueabihf, nightly), test (ubuntu-latest, i686-unknown-linux-gnu, nightly), test (ubuntu-latest, thumbv6m-none-eabi, nightly) with:
Backtrace
For test (ubuntu-latest, i686-unknown-linux-gnu, nightly):
The text was updated successfully, but these errors were encountered: