-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Crystal on Windows. #2569
Comments
Windows target can come in two flavors:
The Cygwin target may not be too hard to achieve, since it's POSIX and most libraries seem to be compatible (I'm not sure about unwind thought). The problem is that it requires a Cygwin environment to compile with Crystal (not just to build Crystal itself), but most importantly to link against A native port would integrate better —I'm not sure what devtools will be required thought, but require hard work. Windows isn't a POSIX platform, and thus everything related to Time, Exceptions, Sockets or Threads among others, must be fully reimplemented to use the Windows API. That being said, there are already other issues about Windows. |
Oh, and we would ❤️ ❤️ ❤️ a Windows port, of course! Part of the problem is that nobody of the core team uses Windows, as far as I know. We don't know neither it's devtools or it's API. It would thus take a tremendous effort to work on a Windows port. |
I believe that the new windows feature (in beta), that allows linux Best Regards, On Sun, May 8, 2016 at 8:17 AM, Julien Portalier [email protected]
|
I don't know. This is the inverse of WINE and terminal-only (AFAIK). It brings the UNIX command-line experience to windows, but that's about it. If it's only to build terminal applications, or tart the playground, maybe that's enough. But can you build Windows applications? Maybe by hacking the SampleApp so you can bundle a built binary, but you'll still be limited to So, no, in the foreseeable future, this doesn't look like a realistic solution. |
@waterlink i actually remeber somebody building crystal under that ubuntu-in-windows thingy, it was crashing due to the RAM limitation (it's only 1 GB) tho |
Oh I see. Crystal needs just a bit more RAM at the moment. What I Best Regards, On Sun, May 8, 2016 at 10:23 AM, TyanNN [email protected] wrote:
|
And ubuntu-in-windows thingy I believe has Best Regards, On Sun, May 8, 2016 at 10:30 AM, Oleksii Fedorov [email protected]
|
@waterlink well, it probably does, so yep, just can install it like that. I'll probably ask somebody to test it |
I can run and apt-get cryatal now in Bash-windows at win10 Techpreview 14332,as someone reported ever, But only compile sorcecode at terminal-based application,like manderbrot. bash-win have now max 1GB limit,but these may be soon improved https://github.com/Microsoft/BashOnWindows |
@waterlink seems like it works |
Apart from what @ysbaddaden said, another major difference with POSIX is exception handling. At least that's what @waj told me. I don't know the details because he implemented all of that. The related code is in:
The exception handling involves a personality function. @waj found a lot of info in this blog post because he couldn't find official docs for this, it seems you have to figure it all out by reverse engineering. That said, if we all focus our efforts on Windows in one release, we should be able to make it. Someone tried to make Windows happen, in parallel, but the language was so in flux that most of his time was spent on fixing merge conflicts. Now things are not only much stable, but all the required C functions are grouped and located on the Another small issue is that we'll need Continuos Integration (CI) server to test that, once we do get Windows support, it doesn't break between commits and changes. We should probably have a single tracking issue for Windows support with a list of checkboxes that we need to check/understand before implementing it, together with answers/ideas that we have. For example we could have a list that maps POSIX functions to Windows functions, so when we decide to start porting stuff it'll be much easier to do. |
Hi! Another information for Windows. |
Duplicate of #26 ? |
Deffo |
I'm closing this in favor of #26 . Let's keep the discussion in a single place. |
There was a comment from someone on the last release of Crystal.
http://crystal-lang.org//2016/05/05/crystal-0.16.0-released.html#comment-2663233814
What is crystals story on windows?
The text was updated successfully, but these errors were encountered: