Lua安装 #

一、安装前的准备 #

1.1 系统要求 #

Lua 可以运行在几乎所有主流操作系统上:

操作系统 支持版本
Windows Windows 7 及以上
macOS macOS 10.10 及以上
Linux 所有主流发行版
BSD FreeBSD、OpenBSD 等

1.2 版本选择 #

推荐使用 Lua 5.4(最新稳定版)或 Lua 5.1(广泛兼容):

  • Lua 5.4:最新特性,推荐新项目使用
  • Lua 5.3:稳定版本,支持整数和位运算
  • Lua 5.1:广泛支持,LuaJIT 兼容版本
  • LuaJIT:高性能版本,速度极快

二、Windows 安装 #

2.1 使用安装包 #

  1. 下载安装包

访问 Lua 官方网站或第三方构建版本:

text
官方源码:https://www.lua.org/download.html
第三方构建:https://github.com/rjpcomputing/luaforwindows
  1. 使用 LuaForWindows

LuaForWindows 提供完整的 Windows 安装包:

text
1. 下载 LuaForWindows 安装程序
2. 运行安装程序,选择安装路径
3. 勾选"Add to PATH"选项
4. 完成安装

2.2 使用 Scoop 安装 #

powershell
# 安装 Scoop(如果没有)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex

# 安装 Lua
scoop install lua

# 验证安装
lua -v

2.3 使用 Chocolatey 安装 #

powershell
# 安装 Chocolatey(如果没有)
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

# 安装 Lua
choco install lua

# 验证安装
lua -v

2.4 手动编译(高级) #

powershell
# 需要安装 Visual Studio 或 MinGW
# 下载源码
curl -LO https://www.lua.org/ftp/lua-5.4.6.tar.gz
tar xzf lua-5.4.6.tar.gz
cd lua-5.4.6

# 使用 MinGW 编译
mingw32-make mingw
mingw32-make install

三、macOS 安装 #

3.1 使用 Homebrew 安装(推荐) #

bash
# 安装 Homebrew(如果没有)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装 Lua
brew install lua

# 验证安装
lua -v

3.2 安装 LuaJIT #

bash
# 安装 LuaJIT(高性能版本)
brew install luajit

# 验证安装
luajit -v

3.3 使用 MacPorts 安装 #

bash
# 安装 Lua
sudo port install lua

# 安装 LuaJIT
sudo port install luajit

3.4 手动编译 #

bash
# 下载源码
curl -LO https://www.lua.org/ftp/lua-5.4.6.tar.gz
tar xzf lua-5.4.6.tar.gz
cd lua-5.4.6

# 编译(macOS)
make macosx test

# 安装到系统
sudo make install

# 验证
lua -v

四、Linux 安装 #

4.1 Ubuntu/Debian #

bash
# 更新包列表
sudo apt update

# 安装 Lua 5.4
sudo apt install lua5.4

# 安装开发包(用于编译 C 扩展)
sudo apt install liblua5.4-dev

# 安装 LuaJIT
sudo apt install luajit

# 验证安装
lua5.4 -v

4.2 CentOS/RHEL/Fedora #

bash
# Fedora
sudo dnf install lua lua-devel

# CentOS/RHEL (需要 EPEL)
sudo yum install epel-release
sudo yum install lua lua-devel

# 验证安装
lua -v

4.3 Arch Linux #

bash
# 安装 Lua
sudo pacman -S lua

# 安装 LuaJIT
sudo pacman -S luajit

# 验证安装
lua -v

4.4 手动编译 #

bash
# 安装编译依赖
sudo apt install build-essential libreadline-dev

# 下载源码
curl -LO https://www.lua.org/ftp/lua-5.4.6.tar.gz
tar xzf lua-5.4.6.tar.gz
cd lua-5.4.6

# 编译 Linux 版本
make linux test

# 安装
sudo make install

# 验证
lua -v

五、安装 LuaRocks(包管理器) #

LuaRocks 是 Lua 的包管理器,用于安装和管理 Lua 模块。

5.1 Windows 安装 #

powershell
# 使用 Scoop
scoop install luarocks

# 或下载安装包
# https://luarocks.org/

5.2 macOS 安装 #

bash
# 使用 Homebrew
brew install luarocks

# 验证安装
luarocks --version

5.3 Linux 安装 #

bash
# Ubuntu/Debian
sudo apt install luarocks

# Fedora
sudo dnf install luarocks

# 从源码安装
wget https://luarocks.org/releases/luarocks-3.9.2.tar.gz
tar xzf luarocks-3.9.2.tar.gz
cd luarocks-3.9.2
./configure && make && sudo make install

5.4 使用 LuaRocks #

bash
# 搜索包
luarocks search json

# 安装包
luarocks install dkjson

# 列出已安装的包
luarocks list

# 卸载包
luarocks remove dkjson

六、开发环境配置 #

6.1 命令行工具 #

交互式解释器:

bash
$ lua
Lua 5.4.6  Copyright (C) 1994-2023 Lua.org, PUC-Rio
> print("Hello, Lua!")
Hello, Lua!
> -- Ctrl+D 或 os.exit() 退出

运行脚本:

bash
# 运行文件
lua script.lua

# 运行并传递参数
lua script.lua arg1 arg2

# 执行命令行代码
lua -e "print('Hello')"

6.2 VS Code 配置 #

  1. 安装扩展

推荐安装以下 VS Code 扩展:

text
- Lua (sumneko.lua) - 官方 Lua 语言服务器
- Lua Debug (actboy168.lua-debug) - 调试支持
- Lua Format (koiro.lua-format) - 代码格式化
  1. 配置 settings.json
json
{
    "Lua.runtime.version": "Lua 5.4",
    "Lua.diagnostics.enable": true,
    "Lua.completion.enable": true,
    "Lua.hint.enable": true,
    "[lua]": {
        "editor.defaultFormatter": "koiro.lua-format",
        "editor.tabSize": 4,
        "editor.insertSpaces": true
    }
}
  1. 调试配置 launch.json
json
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lua",
            "request": "launch",
            "name": "Debug Lua",
            "program": "${file}",
            "cwd": "${workspaceFolder}"
        }
    ]
}

6.3 其他 IDE/编辑器 #

IntelliJ IDEA:

text
安装 EmmyLua 插件
提供完整的 Lua 开发支持

ZeroBrane Studio:

text
专为 Lua 设计的轻量级 IDE
内置调试器和静态分析
下载:https://studio.zerobrane.com/

Vim/Neovim:

vim
" 安装 vim-lua 插件
Plug 'tbastos/vim-lua'

" 配置
let g:lua_complete_omni = 1

Emacs:

elisp
;; 使用 lua-mode
(use-package lua-mode
  :mode "\\.lua\\'"
  :config
  (setq lua-indent-level 4))

七、验证安装 #

7.1 检查版本 #

bash
# 检查 Lua 版本
lua -v
# 输出:Lua 5.4.6  Copyright (C) 1994-2023 Lua.org, PUC-Rio

# 检查 LuaJIT 版本
luajit -v
# 输出:LuaJIT 2.1.1692716794 -- Copyright (C) 2005-2023 Mike Pall.

7.2 测试脚本 #

创建测试文件 test.lua

lua
-- test.lua
print("Lua 安装成功!")
print("版本:" .. _VERSION)

-- 测试基本功能
local arr = {1, 2, 3, 4, 5}
local sum = 0
for _, v in ipairs(arr) do
    sum = sum + v
end
print("数组求和:" .. sum)

-- 测试表
local person = {
    name = "Lua",
    age = 30
}
print(string.format("姓名:%s,年龄:%d", person.name, person.age))

运行测试:

bash
lua test.lua

7.3 检查模块路径 #

bash
# 查看模块搜索路径
lua -e "print(package.path)"
lua -e "print(package.cpath)"

八、多版本管理 #

8.1 使用版本管理工具 #

bash
# 使用 asdf 管理 Lua 版本
asdf plugin add lua
asdf install lua 5.4.6
asdf global lua 5.4.6

# 使用 hererocks(Python 工具)
pip install hererocks
hererocks lua54 -l5.4 -r3.9
source lua54/bin/activate

8.2 手动多版本 #

bash
# 编译不同版本到不同目录
make linux INSTALL_TOP=/usr/local/lua54
make linux INSTALL_TOP=/usr/local/lua51

# 使用符号链接切换
ln -sf /usr/local/lua54/bin/lua /usr/local/bin/lua

九、常见问题 #

9.1 找不到 lua 命令 #

bash
# 检查 PATH 环境变量
echo $PATH

# 添加 Lua 到 PATH(bash)
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

# 添加 Lua 到 PATH(zsh)
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

9.2 模块找不到 #

lua
-- 设置模块路径
package.path = package.path .. ";/my/modules/?.lua"
package.cpath = package.cpath .. ";/my/cmodules/?.so"

9.3 编译错误 #

bash
# 安装必要的依赖
sudo apt install build-essential libreadline-dev

# 指定 readline 路径
make linux MYCFLAGS="-I/usr/include/readline" MYLDFLAGS="-L/usr/lib/readline"

十、总结 #

本章介绍了在各个操作系统上安装 Lua 的方法:

  1. Windows:使用安装包、Scoop 或 Chocolatey
  2. macOS:使用 Homebrew 或手动编译
  3. Linux:使用包管理器或手动编译
  4. LuaRocks:安装和使用包管理器
  5. 开发环境:配置 VS Code 和其他编辑器

安装完成后,你可以开始编写第一个 Lua 程序了!下一章,我们将编写 Hello World 程序并学习 Lua 的基本使用。

最后更新:2026-03-27