如何创建可运行LUA代码的程序并生成可执行文件(使用Visual Studio)
Lua代码打包为独立可执行文件操作指南
下面是三种最常用的无额外依赖打包方案,你可以根据自己的项目类型选择:
方案1:使用luastatic静态编译(通用场景首选)
这个方案会把你的Lua代码和Lua解释器直接静态编译成单个exe文件,分发时不需要附带任何额外文件
- 前置准备:
- 安装好和你的代码适配版本的Lua环境(你如果是从Create Your Frisk入门Lua,大概率用的是Lua 5.1,优先选对应版本)
- 你已经装了Visual Studio,直接用自带的MSVC编译器即可,不需要额外装编译工具
- 下载
luastatic.lua脚本放到你的项目根目录
- 打包步骤:
- 打开Visual Studio的「开发者命令提示符」,切换到你的项目根目录
- 执行打包命令:
lua luastatic.lua 你的主入口脚本.lua Lua静态库路径/liblua.lib -I Lua头文件所在目录 - 命令执行完成后,根目录会直接生成可独立运行的exe文件
方案2:使用srlua轻量拼接
这是Lua官方维护的轻量打包工具,操作逻辑更简单,适合小型纯Lua项目
- 前置准备:下载对应Lua版本的srlua工具包,包含
glue.exe和srlua.exe两个文件 - 打包步骤:
- (可选)如果需要加密源码,先把Lua代码编译为字节码:
luac -o out.out 你的主入口脚本.lua - 执行拼接命令:
glue srlua.exe 你的代码文件(支持源码/字节码两种格式) 最终生成的exe名称.exe - 如果你用到了第三方Lua C扩展库,把对应的dll文件和生成的exe放在同一目录即可正常运行
- (可选)如果需要加密源码,先把Lua代码编译为字节码:
方案3:使用Love2D打包(游戏类项目首选)
如果你做的是游戏类项目,这个方案对图形、音频接口的适配度更高
- 打包步骤:
- 把你的所有Lua代码、游戏资源打包为zip格式,把zip文件后缀改为
.love - 下载对应版本的Love2D二进制包,找到包内的
love.exe - 打开命令行执行拼接命令:
copy /b love.exe+你的项目文件名.love 最终生成的exe名称.exe - 把Love2D二进制包内的所有dll文件和生成的exe放在同一目录,即可独立运行,也可以用额外的单文件打包工具把dll和exe合并为单个文件
- 把你的所有Lua代码、游戏资源打包为zip格式,把zip文件后缀改为
注意:打包前务必确认打包用的Lua解释器版本和你开发用的版本一致,避免出现语法不兼容、API调用报错的问题。如果你用到了luasocket、lfs这类第三方C扩展,要么把对应dll和exe一起分发,要么提前把扩展静态编译到打包用的Lua解释器中。
内容的提问来源于stack exchange,提问作者Wohao_Gaster
相关产品推荐
相关产品推荐

