开源项目luaToEXE: 将.lua封装为自带解释器无lua环境依赖的可执行文件工具

引言

.lua文件编译为自带解释器,无环境依赖的.exe的标准做法是使用srlua.不过,其本身已有十来年未有更新,同时也未提供编译好的二进制文件(很多人编译的srlua未考虑依赖问题导致编译后的程序在无lua环境中运行时报缺失dll错误),并不是即开即用.

luaToEXE是一个封装了srlua的开源项目,旨在为将.lua编译为自带解释器的.exe提供简单的解决方案.

特点:

  • 简单易用
  • 编译后的.exe无依赖(在Windows沙盒环境下测试通过)
  • 支持多Lua版本选择

项目包括两个子项目:

  1. lua-to-exe: 一个Python库,提供转换的API函数和图形界面
  2. exelua: 一个命令行工具程序,包括32位及64位版本

链接:

教程: lua-to-exe

  1. 使用pip install lua-to-exe安装

2. 在你的项目中使用import lua_to_exe导入包(注意是_)

  1. 图形界面: 运行lua_to_exe.gui()唤起图形界面

    • 包括输入.lua,输出.exe的文件(名)选择及转换按钮
    • 下拉框可选lua版本.-32表示32位,以此类推

4. API: 调用lua_to_exe()函数

markdown 复制代码
-   `lua_to_exe(lua_file, exe_file, lua_version='5.1.5-64')`,参数列表依次为输入的`.lua`文件,输出的`.exe`文件,及可选的lua版本(默认为5.1.5-64)
-   调用`all_available()`可获取所有可用的lua版本名字典

教程: exelua

  1. Release页面下载对应位数的exelua

2. 解压并将目录添加至环境变量,重启电脑.注意,确保srlua文件夹在同目录下

3. 在Windows终端中运行exelua -v,输出版本号表示安装成功

  1. 输入exelua -h获取使用帮助,输入exelua -list(初次运行可能耗费一些时间)列出所有可用版本

5. 运行exelua -c <input.lua> <output.exe> [-lua <version>]执行转换.参数依次是,输入的.lua文件路径,输出的.exe文件路径,可选的-lua(如需指明lua版本)及对应的版本.例如,将helloworld.lua转换为helloworld.exe的指令可以是exelua -c helloworld.lua helloworld.exe,使用默认的5.1.5-64/5.1.5-32版本的lua解释器.

求Star

如果项目有帮助到你,还请不吝啬点几个Star了 :)

相关推荐
liulilittle2 天前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
liulilittle2 天前
麻将服务器崩溃补偿与异常处理语义(CRASH_SEMANTICS)
ai·自动化·llm·mock·lua·测试·tools
liulilittle2 天前
麻将 UI 层可观察行为(UI_BEHAVIOR)
ai·自动化·llm·mock·lua·测试·tools
liulilittle2 天前
C++ 引擎接口到 mock 的映射(INTERFACE_MAP)
ai·自动化·llm·mock·lua·测试·tools
bst@微胖子5 天前
Linux环境做LVM快照
lua
橘色的喵7 天前
XCOM:一个 4 MB 的串口调试工具
串口·lua·串口工具·xcom
玖玥拾10 天前
Lua 基础语法(八) Unity Huatuo (HybridCLR)
开发语言·unity·游戏引擎·lua
x10n911 天前
Postman 汉化完整指南
测试工具·lua·postman
AI情绪识别开源12 天前
检信 Allemotion 认知功能障碍矫正软件体验评审意见报告
lua
玖玥拾12 天前
Lua 基础语法(六)xLua Lua 调用 C# 交互
开发语言·unity·c#·lua