Skip to content
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

Failing to compile on Windows ARM64 #9138

Closed
dlech opened this issue Nov 15, 2024 · 4 comments · Fixed by #9172
Closed

Failing to compile on Windows ARM64 #9138

dlech opened this issue Nov 15, 2024 · 4 comments · Fixed by #9172
Labels
windows Specific to the Windows platform

Comments

@dlech
Copy link

dlech commented Nov 15, 2024

I'm trying to pipx install cibuildwheel[uv] on a Windows ARM64 machine. There are no binary wheels for uv on this platform, so it tries to compile the package from source (uv-0.5.2.tar.gz). However, it is failing with the following error.

         Compiling uv-trampoline-builder v0.0.1 (C:\Users\extra\AppData\Local\Temp\pip-install-hv48jtb7\uv_8840a2c89e304464bb97267224937b3d\crates\uv-trampoline-builder)
      error: couldn't read `crates\uv-trampoline-builder\src\../../uv-trampoline/trampolines/uv-trampoline-aarch64-gui.exe`: The system cannot find the path specified. (os error 3)
        --> crates\uv-trampoline-builder\src\lib.rs:29:5
         |
      29 |     include_bytes!("../../uv-trampoline/trampolines/uv-trampoline-aarch64-gui.exe");
         |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         |
         = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
      
      error: couldn't read `crates\uv-trampoline-builder\src\../../uv-trampoline/trampolines/uv-trampoline-aarch64-console.exe`: The system cannot find the path specified. (os error 3)
        --> crates\uv-trampoline-builder\src\lib.rs:33:5
         |
      33 |     include_bytes!("../../uv-trampoline/trampolines/uv-trampoline-aarch64-console.exe");
         |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         |
         = note: this error originates in the macro `include_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
      
      error: could not compile `uv-trampoline-builder` (lib) due to 2 previous errors
      warning: build failed, waiting for other jobs to finish...
      💥 maturin failed
        Caused by: Failed to build a native library through cargo
        Caused by: Cargo build finished with "exit code: 101": `"cargo" "rustc" "--message-format" "json-render-diagnostics" "--manifest-path" "C:\\Users\\extra\\AppData\\Local\\Temp\\pip-install-hv48jtb7\\uv_8840a2c89e304464bb97267224937b3d\\crates\\uv\\Cargo.toml" "--release" "--bin" "uv" "--" "-C" "strip=symbols"`
      Error: command ['maturin', 'pep517', 'build-wheel', '-i', 'C:\\Users\\extra\\pipx\\venvs\\cibuildwheel\\Scripts\\python.exe', '--compatibility', 'off'] returned non-zero exit status 1
      [end of output]

I don't really know anything about how crates/rust work so I'm not sure how to troubleshoot it. For example, is it sensitive about the unix path seperators (/) in the path? Is it a circular dependency issue where the uv-trampoline crate depends on uv-trampoline-builder but uv-trampoline-builder is using files from the uv-trampoline crate? Is it a version issue where it is depending on a version of the uv-trampoline from before the aarch64 binaries were added? Those are my best guesses.

@charliermarsh
Copy link
Member

I think this might be best discussed in #1141.

@dlech
Copy link
Author

dlech commented Nov 15, 2024

Sure. I wasn't entirely sure if it was actually related to Windows ARM64 specifically or if this was a more general "the sdist package is broken" kind of issue.

@charliermarsh charliermarsh added the windows Specific to the Windows platform label Nov 17, 2024
@charliermarsh
Copy link
Member

Looked into it and I think you're right that there's a real, separate problem with the sdist. Thanks.

@zanieb
Copy link
Member

zanieb commented Nov 17, 2024

If someone could test the "fixed" sdist at https://github.com/astral-sh/uv/actions/runs/11880251223/artifacts/2198442674 that'd be great

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
windows Specific to the Windows platform
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants