lua-users home
lua-l archive

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




On Wed, Jan 13, 2021 at 8:34 AM Sudipto Mallick <smallick.dev@gmail.com> wrote:
No one mentioned the Tiny C Compiler[1][2]. You can download it from
here[3] then the latest source code from here[2] and bootstrap it. See
win32/tcc-win32.txt in the source distribution for help.
Then you can download tcc-busybox-for-win32.zip and build the patched
busybox and gmake therein with tcc. This gives you a system and
environment capable of building lua and other sources and also very
lightweight, much much less than hundreds of megabytes.

[1]        https://tinycc.org/
[2]        https://repo.or.cz/tinycc.git
           Click .tar.gz or .zip link from the 'mob' branch.
[3]        http://download.savannah.nongnu.org/releases/tinycc/
           Download the appropriate tcc-0.9.27-win{32,64}-bin.zip
depending on your system being 32-bit or 64-bit
Ha! That's so cool.  What does it use for a standard C Library?  What size does your full environment come in at?

I've been able to get WinLua down to about 230 Mb without sacrificing any of the core functionality,  but nothing like Tiny CC.  I might be able to shrink it further by compiling with dynamic libraries, but that makes the compiler slower and it's already slow because of Windows. LLVM-Mingw is smoking fast on Linux or FreeBSD. (I think GCC 9 recently took the speed crown back from CLang?)

In terms of size:
Visual Studio: 20,000 - 40,000 Mb
Visual Studio Build Tools (MSBuild, VC, tools): 6,00 Mb
WinLua: 600 Mb