How to compile Lua 5.4.0 for Windows
This is a tutorial on how to compile Lua 5.4.0 for Windows (32-bit and 64-bit executable and DLL) with the Microsoft Visual Studio Community Edition.
1. Download and install Visual Studio Community Edition 2019 – do not use any older/newer version (tested with 16.6.0 only)
2. Download and extract the Lua 5.4.0 source code
3. Open a x86 Native Tools Command Prompt for VS 2019 to compile for 32-bit or open a x64 Native Tools Command Prompt for VS 2019 for 64-bit, then navigate to the extracted Lua src/ folder and run inside this folder the following commands
|
1 2 3 4 5 6 7 8 9 |
cl /MD /O2 /c /DLUA_BUILD_AS_DLL *.c ren lua.obj lua.o ren luac.obj luac.o link /DLL /IMPLIB:lua5.3.5.lib /OUT:lua5.3.5.dll *.obj link /OUT:lua.exe lua.o lua5.3.5.lib lib /OUT:lua5.3.5-static.lib *.obj link /OUT:luac.exe luac.o lua5.3.5-static.lib |
You’re done! You should now have a lua.exe interpreter, a luac.exe compiler and a lua5.4.0.dll. You may use the %VSCMD_ARG_TGT_ARCH% environment variable to distinguish between 32- and 64-bit.
2 Comments to How to compile Lua 5.4.0 for Windows
The command script details refer to creating a 5.3.5 collection, not a 5.4.x collection of binaries.
May 23, 2025
You’re right. I’m going to update the post to the current version (5.4.7) the next days, thanks.
Leave a comment
About Dennis D. Spreen
Search
Recent Posts
- How to compile Lua 5.4.0 for Android as a dynamic library using Android Studio 4
- Please make inline vars usable for production – fix RSP-28892
- How to compile Lua 5.4.0 as a Mac OS X dynamic library
- How to compile Lua 5.4.0 for Linux as a shared library
- How to compile Lua 5.4.0 for Windows
- Daily Wage – a Spigot/Bukkit plugin that pays out a daily wage
- How to compile Lua 5.3.5 for Windows
- Better Collada exporter for Blender with custom properties
- MOS6502-delphi – a MOS 6502 CPU emulator for Delphi
- Pass a multidimensional array as a parameter (with a hidden caveat)
Categories
Tags
Archives
- May 2020
- March 2020
- June 2019
- March 2017
- August 2016
- July 2016
- June 2016
- January 2016
- September 2015
- February 2015
- January 2015
- October 2014
- September 2014
- August 2014
- May 2014
- March 2014
- February 2014
- November 2011
- June 2011
- February 2011
- March 2010
- September 2009
- August 2009
- July 2009
- May 2009
- March 2009
- February 2009
- January 2009
- November 2008
- October 2008
- February 2008
- June 2007
Delphi Feeds
- Williamson Water and Land Advisory: Visualizing Environmental Data with TeeChart for .NET January 30, 2026
- Nueva versión de la aplicación DebugStringView (v.1.4) January 29, 2026
- Nueva versión de la aplicación DebugStringView (v.1.4) January 29, 2026
- When AI Starts Acting: The Governance Gap in Singapore’s (actually quite good) New Framework January 29, 2026
- How to Convert Classic ASP to ASP.NET January 28, 2026
- GExperts Code Formatter: Delphi 13 Language Support January 27, 2026
- Datamodules are now here! January 27, 2026
- Come and meet me at the Hub101 Nerdfest, to see Visuino in action and join the Visuino lab to build your own projects! January 26, 2026
- Fast Math in Six Languages: What We Did and Why It Works January 26, 2026
- Converting a Delphi FireMonkey Project to VCL with AI Assistance January 26, 2026



May 23, 2025