ponyc icon indicating copy to clipboard operation
ponyc copied to clipboard

Support gcc on windows (Enhancement)

Open fithisux opened this issue 8 years ago • 12 comments
trafficstars

Some people do not use Microsoft C/C++ compiler on windows. Please make pony compatible with mingw or mingw-64 on windows.

fithisux avatar Jul 25 '17 12:07 fithisux

This would be nice to have; I am extremely busy right now and don't have time. If you want to experiment with GCC, this would require several steps:

  • Modify the ponyc-windows-libs project (https://github.com/kulibali/ponyc-windows-libs) to add GCC builds.
  • In wscript, add a config setting for msvc vs. gcc.
  • In wscript, add gcc configuration to the configure and build functions.

chalcolith avatar Jul 25 '17 15:07 chalcolith

Thanks for the reply. I have to check this out.

fithisux avatar Jul 25 '17 17:07 fithisux

This seems interesting. Can I work on it? 🙂 incase it hasn't been done yet.

aravind-kumar avatar Apr 18 '18 02:04 aravind-kumar

Yes!

SeanTAllen avatar Apr 18 '18 14:04 SeanTAllen

@aravind-kumar I've invited you to be a member of the pony organization as a contributor. If you accept, you can be assigned to issues. Drop us a note here if you accept and someone can assign this issue to you.

SeanTAllen avatar Apr 18 '18 14:04 SeanTAllen

Awesome! 🙂, Am in 🙂 Could you kindly explain in a bit more detail?
I am new and kind of finding it hard to understand But interesting 🙂

aravind-kumar avatar Apr 18 '18 14:04 aravind-kumar

@aravind-kumar exaplain what in more detail?

SeanTAllen avatar Apr 18 '18 14:04 SeanTAllen

@SeanTAllen : The steps to take for this enhancement

  • "Modify the ponyc-windows-libs project (https://github.com/kulibali/ponyc-windows-libs) to add GCC builds." This one 🙂

aravind-kumar avatar Apr 20 '18 14:04 aravind-kumar

@aravind-kumar that would be a question for @kulibali

SeanTAllen avatar Apr 20 '18 14:04 SeanTAllen

Hi @aravind-kumar, you'll need to do the following:

  • Modify build.ps1 in ponyc-windows-libs to build versions of PCRE2, LibreSSL and LLVM with GCC (probably mingw as the original poster suggests) as well as MSVC, and submit a pull request to that project.
  • I can tag a new release of that project and use make-local.ps1 to build and upload new library zip files.
  • Modify wscript in the https://github.com/ponylang/ponyc project to be able to use GCC as well as MSVC, and submit a PR.

chalcolith avatar Apr 20 '18 15:04 chalcolith

Oh, and also you will need to modify vcvars.c to provide the correct options for finding required C/C++ headers, and calling the Gnu linker when linking Pony programs.

chalcolith avatar Apr 20 '18 18:04 chalcolith