Windows build with xbuild failing when http feature is enabled.
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 30.6k
- Forks
- 2.1k
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 72
Description
**Describe the bug**
When the `http` feature is enabled and the image loaders are registered, the linking fails when building for windows with xbuild from Linux (tested under Debian and Fedora). There are many similar errors to this, all in ring:
```
rust-lld: error: undefined symbol: _mm_setzero_si128
>>> referenced by /home/daniel/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.8/crypto/poly1305/poly1305_vec.c:129
>>> libring-99d4b686355d1f30.rlib(123d8a351a02283d-poly1305_vec.o):(ring_core_0_17_8_CRYPTO_poly1305_init)
>>> referenced by /home/daniel/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.8/crypto/poly1305/poly1305_vec.c:130
>>> libring-99d4b686355d1f30.rlib(123d8a351a02283d-poly1305_vec.o):(ring_core_0_17_8_CRYPTO_poly1305_init)
>>> referenced by /home/daniel/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ring-0.17.8/crypto/poly1305/poly1305_vec.c:131
>>> libring-99d4b686355d1f30.rlib(123d8a351a02283d-poly1305_vec.o):(ring_core_0_17_8_CRYPTO_poly1305_init)
>>> referenced 2 more times
```
Full log: [build.log](https://github.com/user-attachments/files/18188494/build.log)
Is this a ring or an egui bug?
**To Reproduce**
Steps to reproduce the behavior:
main.rs
```rust
use eframe::egui::Context;
use egui_extras::install_image_loaders;
fn main() {
install_image_loaders(&Context::default());
}
```
Cargo.toml
```toml
[package]
name = "ring-test"
version = "0.1.0"
edition = "2021"
[dependencies]
eframe = { git = "https://github.com/emilk/egui", branch = "master" }
egui_extras = { git = "https://github.com/emilk/egui", branch = "master", features = [
"http",
] }
```
Install xbuild:
```
cargo install xbuild
```
Then run
```
x build --platform windows --arch x64
```
**Expected behavior**
Build succeeds
**Desktop (please complete the following information):**
- OS: Fedora 41
- xbuild 0.2.0
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 minimal main.rs and Cargo.toml reproduction, then run `x build --platform windows --arch x64` with the `http` feature and image loaders enabled. Compare the linker errors involving ring with the full build.log to establish whether the failure belongs to egui or its dependency; done means the Windows build succeeds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100