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
Windows build instructions documentation. #6956
Conversation
1ef31cd
to
cfc436c
Compare
Very nice! I think these instructions should also be linked with building_ruby.md and with the instructions reg. Visual C. I stumbled upon them only accidentally, so at best we link forth and back. The topic about icons applies on Mingw as well. |
LGTM. Wonder if any mention should be made about dependencies, both mingw & mswin. mswin is using Should https://github.com/Microsoft/vcpkg be mentioned as a 'recommended source' for packages with mswin builds? Not sure about doc locations, as mswin is referred to in win32/README.win32? Or, combine mingw & mswin in one doc? |
IMHO win32/README.win32 should contain a link only, pointing to doc/windows.md and that file should contain both environments. |
I have same concern as @MSP-Greg. This instruction is only |
Thanks @ioquatix - I tried the I wonder if it's useful also to note that in the guide. At the end of 40min, I was able to do:
|
Ruby 3.0 is built with mingw gcc, Ruby 3.1 is built with ucrt gcc, so if one does JFYI, if you have more than one CPU core, you can use |
Hi @MSP-Greg... Exactly that - no compilers found. I expected that was the case when I saw the error, but wanted to highlight that we should add a note about the environment being set by the command and that it would work with Ruby 3.1 or newer (and/or include the older variant, if relevant). Thanks for the tip on the cores... should add that in also, I feel. I tried to build it as a relative newbie keen to see how it works, and wanted to report my observations 🙂 |
@mohits Thanks for the info, and thanks for testing it. I'm not sure how best to proceed.
This discussion has been framed regarding master, but a user could certainly follow similar steps to try a backport in an older version of Ruby. Finally, I'm like to contribute, but I've been too close to it for too long to know how much detail to include... |
Hi @MSP-Greg - thanks. In my opinion, the Building Ruby document does not need to cover everything but should offer at least 1 path that will almost certainly work for most people trying it the first time and/ or highlight what might go wrong. On my blog, most of my starter-style posts are written to work that way and to also include things that go wrong (and why). Briefly, in response to your comments:
I followed the same ideas when I wrote these pages for JRuby:
Based on this, I would recommend we probably add:
I also personally feel that documentation PRs should be fast-tracked if they are not dangerous since they usually add value. On that idea, we should wait just a couple of days more and accept enhancements as people (like me) find things that can be improved. You're doing enough :) so feel free to let us ferret around and suggest things that make sense for others :) It's my working day now, so I will try to get to this later. |
One more thing - I think this does not consider building YJIT since that needs Rust... so, that gets skipped. |
LGTM. The current code essentially only builds ruby core. Also, I'm not sure if Windows builds support YJIT. All config summaries show:
Also, I tried it locally, and I needed to change to the following (PowerShell script):
|
This document is by no means perfect, but it's a good step in the right direction. Please feel free to create more PRs to improve it. I would love to see everyone who gave feedback update the document. Let's make it easier for people to develop Ruby on Windows. |
cc @larskanis @MSP-Greg