开源项目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了 :)

相关推荐
java搬砖工-苤-初心不变4 天前
基于 lua_shared_dict 的本地内存限流实现
开发语言·junit·lua
程序猿多布4 天前
XLua教程之热补丁技术
unity·c#·lua·xlua
java搬砖工-苤-初心不变4 天前
OpenResty 限流方案对比:lua_shared_dict vs Redis
redis·lua·openresty
程序猿多布4 天前
XLua教程之Lua调用C#
unity·c#·lua·xlua
夜猫逐梦5 天前
【Lua】Windows 下编写 C 扩展模块:VS 编译与 Lua 调用全流程
c语言·windows·lua
java搬砖工-苤-初心不变5 天前
OpenResty 配合 Lua 脚本的使用
开发语言·lua·openresty
半夏知半秋6 天前
基于跳跃表的zset实现解析(lua版)
服务器·开发语言·redis·学习·lua
Wyc724096 天前
Lua语言基础笔记
开发语言·笔记·lua
锐策9 天前
Lua 核心知识点详解
开发语言·lua
lanhuazui109 天前
lua中 string.match返回值
lua