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

Second attempt at AArch64 Rust #13513

Merged
merged 1 commit into from
Oct 12, 2022
Merged

Conversation

mati865
Copy link
Collaborator

@mati865 mati865 commented Oct 9, 2022

Closes #9046

@jeremyd2019
Copy link
Member

started up a fresh vm and started the job, see what happens. https://github.com/msys2-arm/MINGW-packages/actions/runs/3216377518/jobs/5258497279

@jeremyd2019
Copy link
Member

Well that's odd, it seems to have failed but there's no logs on the job. On the runner there are some logs left, but it looks like they just stop, rather than seeing any error in particular. Probably have to try it again.

@mati865
Copy link
Collaborator Author

mati865 commented Oct 10, 2022

Maybe they are crashing due to lack of memory or something?

@jeremyd2019
Copy link
Member

jeremyd2019 commented Oct 10, 2022

Could be. I might need to fire up a 'cloud' instance. I did get access to Azure free trial, but am "blocked" by a stupid checkbox that says I confirm that I have the right kind of Windows license. I've got an email in to a contact at Microsoft, who is checking with his contacts to see what we can do about that. I'm sure I've done test scenarios in the past that are questionable for licensing, but explicitly checking the box was a step too far 😛

For now, I'm going to try running it again locally. if the whole vm doesn't crash I should at least see what happened. I'm also taking --verbose out of the command, that seemed to make it harder to see what's going on.

Luckily, it seems that editing the PKGBUILD to not rm -rf the build dir and using makepkg -e let it pick up where it seems to have left off, building std crate in stage0 std artifacts (and moved on from that)

@mati865
Copy link
Collaborator Author

mati865 commented Oct 10, 2022

I'm also taking --verbose out of the command, that seemed to make it harder to see what's going on.

Yeah, I also remove that flag when working on it because it's too verbose and hardly ever does help if there are issues.

@jeremyd2019
Copy link
Member

Seems to be working well, and a lot faster than the cross x86_64 did on the pi. It was installing stage2 rust-docs last I checked. Once this is finished would it be interesting if I try to run check()? Or try to pick some packages to build with it?

@mati865
Copy link
Collaborator Author

mati865 commented Oct 10, 2022

Wonderful!

check() could be useful but I expect it to fail.

Building crates might be a bit hard because everything that depends on windows or windows-sys crates in versions older that 0.42 will fail until ecosystem migrates to newer versions or I come up with yet another hack....
You can start with https://github.com/msys2/MINGW-packages/blob/master/mingw-w64-ripgrep/PKGBUILD, this crate doesn't depend on windows* so it might actually work out of the box.

@jeremyd2019
Copy link
Member

It's up to installing rust-src now, as I recall that took a long time even on a more powerful machine... Assuming I get a successful build out of this, I'll try to upload it to github somewhere, and then try playing around with it some.

@jeremyd2019
Copy link
Member

Build completed successfully in 10:05:08

@jeremyd2019
Copy link
Member

https://github.com/msys2-arm/MINGW-packages/releases/tag/rust-1.64.0-aarch64-2

@jeremyd2019
Copy link
Member

I tried running the command from check() but it seemed to be rebuilding from stage0 again 😦 I left it "overnight" but when I checked it in the morning, I could not connect to the VM nor get anything on the 'screen' of the console, so I assume the VM crashed.

@jeremyd2019
Copy link
Member

Oops, the host filesystem is full 🤦

@jeremyd2019
Copy link
Member

ripgrep makedepends on jq and asciidoctor. jq seems to be building on clangarm64, but asciidoctor depends on ruby which is a can-o-worms (#13115). Hopefully I can comment that out and just not get docs.

@jeremyd2019
Copy link
Member

ripgrep package built (with asciidoctor makedepend commented out), and rg --help at least works. Let me know if you want me to test anything else.

@mati865 mati865 marked this pull request as ready for review October 11, 2022 19:54
mingw-w64-rust/PKGBUILD Outdated Show resolved Hide resolved
mingw-w64-rust/PKGBUILD Show resolved Hide resolved
Copy link
Member

@jeremyd2019 jeremyd2019 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this (otherwise) ready to merge?

mingw-w64-rust/PKGBUILD Outdated Show resolved Hide resolved
Co-Authored-By: jeremyd2019 <github@jdrake.com>
Co-Authored-By: Martin Storsjö <martin@martin.st>
@mati865
Copy link
Collaborator Author

mati865 commented Oct 12, 2022

Scrolled through the changes one more time, I believe it's good to go!

@jeremyd2019 jeremyd2019 merged commit ccc21a7 into msys2:master Oct 12, 2022
@mati865 mati865 deleted the rust-aarch64-v2 branch October 12, 2022 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

rust: doesn't support aarch64-windows-gnu
2 participants