lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]




On Fri, Apr 13, 2018 at 2:32 AM, Thijs Schreijer <thijs@thijsschreijer.nl> wrote:


> On 16 Mar 2018, at 05:16, Russell Haley <russ.haley@gmail.com> wrote:
>
> Hi Lua Team,
>
> Microsoft has "graciously" offered the VC Build tools sans Visual Studio for 2017. The install is still around 6.8 gigs, but it means a compiler and nmake are present. Is there any interest in adding an nmake file to the Lua sources?
>
> I took a brief stab at it today when I was testing the VS Build tools (like 15 minutes). I will continue picking at it if there is any interest. I get several "whack tons" of warnings I'll have to look into [1] :
>
> c:\users\russh\lua\lua-5.4.0-work1\src\lua.c(560) : warning C4711: function 'dochunk' selected for automatic inline expansion
>
> Cheers,
>
> Russ
>
> [1] Whack Tons: The official unit for measuring compiler warnings you don't know what to do with
>
> <Makefile.mak>


Have you tried luawinmake [1]? It will build Lua on Windows using native tools, I just added 5.4 support.

Thijs

PS. Tested with gcc toolchains, Windows SDKs, Visual Studio 2008 - 2015. I’d be interested in the VS 2017 result.

Great stuff. I'll fork so I don't lose this project. I'd be keen to see this as part of the base Lua package download as it would meet many criteria for a default build tool. Batch is available on all Windows machines and it's not tied to a toolchain. Is there any chance of that pipedream happening Lua Team?

I understand why there would be reticence to support Visual Studio because you'de need 4-5 different VS files and there are a options that need to be set (that wouldn't be obvious to new users). However, I remember years ago when I started it went something like this for me: "Oh, you have to build Lua from sources. No problem, I have VS right here. I'll just... er... I need make? Okay, wonder if I can download that? wtf is cywgin? I thought this ran on Windows?"  I figured out much later how cygwin and mingw and msys2 work, but Windows users do not know this by default.

In all honesty, I've now invested enough time into WinLua I don't need other build devices for the core Lua libraries. This email chain was about trying to find a solution for other people that are trying to get started with Lua. It's hella-frustrating (tm) for new users trying to get traction with Lua (I've had three people complain to me now, on top of my own experiences).  

The thing I fear is when new users hit a wall of roadblocks in Lua and then download the node+npm installer (or python for that matter), Lua becomes a loosing proposition at that point. I mean, I literally had node.js running on Windows in under 2 minutes. I hope WinLua can get to the same ease of use as the node+npm installer. I don't want to change Lua's distribution system, but I do want to see it easily supported on Windows. Building sources is not in itself a hurdle for Windows developers (and there are LOTS of them), but Lua needs to support the tools available IMHO. 

I'll be sure to test luawinmake at work where I only have the VC++ 2017 command line toolchain and not full VS. 

If you're interested in getting better support on Windows, please consider joining the WinLua project. Send me a request (here or personal or github) and I'll send you a request to join. 

Thanks again, 

Russ


[1] https://github.com/Tieske/luawinmake/pull/14 (feature branch with 5.4-work1 support)