-
Notifications
You must be signed in to change notification settings - Fork 73
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
cross-compiling to aarch64-unknown-linux-gnu uses wrong linker #1378
Comments
Maybe comments in this thread are part of my solution? "Add gcc-aarch64-linux-gnu to cargo-dist's dependencies.apt table. This installs a cross-compilation toolchain which can be invoked as aarch64-linux-gnu-gcc." |
I tried that, and things progressed but still this failure I need to look at more: https://github.com/andrewdavidmackenzie/pigg/actions/runs/10599058041/job/29373158574 |
It looks like your When we determine how to install dependencies, we look at the target triple. Since Your |
Thanks for your detailed reply. Is there a list of target triples you recognize, I could try and change my armv7 target to match one that works? I'll also look at the customizing docs. The aarch64 build was failing the same originally when I opened this issue, but that changed when I added:
to my Cargo.toml, and now it's a "normal" build issue I'll have to investigate. Thanks again. |
I tried to customize, but suspect it's not being used. In the armv7 job here the "Install Dependencies" step is empty. The aarch64 job here is doing the gcc install, but I suspect it's picking that up from my meta-data in Cargo.toml Did I get the addition of the setup right? |
Tried a bunch of things today... no luck. It's trying to link using "cc" and failing. job log I'm stuck, and will have to remove these arm targets from my cargo-dist list of targets I fear... |
I found this bug which mentioned the same error: The error message here is:
certainly is from using "ld" and not an aarch64 linker - so seems to be the same issue. I am going to try and force the linker for these targets by adding a
I already have this in Cargo.toml: and
And I have looked up those debian packages, and confirmed that is the name of the compiler/linker binary file in the package. NOTE: I have modified the title of this issue to reflect this one of my two cargo-dist release build errors related to arm, I have filed an issue with |
No change. I'm out of ideas now. |
@mistydemeo is there anything else I can do to help troubleshoot this issue, that could help lead to solving it? |
Apologies, Misty is on vacation this week. Starting next week I'll be picking up again (this time based on maturin, which some of our users are very-manually using). I think that's the only really practical way for us to support these cross-compiles. |
Was wondering if work started on #74 and if we can help in any way? |
I'll be starting on the end of the week, but I'm not sure if there's an easy way to split up the tasks. The plan is to wrap/adapt https://github.com/PyO3/maturin I expect the biggest bit of work will be fetching and orchestrating the docker images. |
I know that you are working on a totally new approach for cross compiling, but meanwhile I was looking at my failures again: aarch64 build: https://github.com/andrewdavidmackenzie/pigg/actions/runs/10901160279/job/30250372834 I can see that in the "Install dependencies" step it is using "apg-get" to install the aarch64 toolchain, presumably based on my meta.d.ist.dependencies.apt key in my Cargo.toml:
But in the armv7 build: https://github.com/andrewdavidmackenzie/pigg/actions/runs/10901160279/job/30250373154 I don't see it attempting to install either of my two attempts at an armv7 toolchain. And that could be one reason that build fails with:
Do you know why it is not attempting to install the specified dependency for the "armv7-unknown-linux-gnueabihf" target? |
I have been able to get the aarch64 build via cargo-dist to work. So, I think we should close this one in favor of #1417 If that issue could be fixed, our cross compiling needs would be met with the current implementation. FYI @Gankra |
Hi, request for help.
In my release the build-local-artifacts step fails for two arm arch builds I have, when building ring, thus:
Full job here: https://github.com/andrewdavidmackenzie/pigg/actions/runs/10597707922/job/29368504382
Here is my Cargo.toml
Here is my release.yml
How do I fix that?
The text was updated successfully, but these errors were encountered: