简介
Lua JIT是Lua语言的即时(JIT:Just-In-Time)编译器,它提供基于快速解释器和跟踪编译器的虚拟机,可显著提高Lua程序的性能。
编译安装方法
配置编译环境
安装wget工具。
yum install wget -y
获取“v2.1.0-beta3”源码包。
cd /usr/local/src
wget https://github.com/LuaJIT/LuaJIT/archive/v2.1.0-beta3.tar.gz
说明:经过测试,当前v2.1.0版本是支持aarch64架构的CPU的服务器/虚拟机执行,其他的版本不支持。
编译和安装
步骤1: 解压软件包。
cd /usr/local/src
tar -zxvf v2.1.0-beta3.tar.gz
步骤2 :LuaJIT进入目录。
cd LuaJIT-2.1.0-beta3/
步骤3 : 编译安装LuaJIT。
make -j4 && make install
运行和验证
步骤1:将生成的luajit可执行文件修改名称,因为生成的luajit可执行程序名称为luajit-2.1.0-beta3,不便于使用。
mv /usr/local/bin/luajit-2.1.0-beta3 /usr/local/bin/luajit
步骤2 :创建test.lua文件,并输入如下代码。
vi test.lua
插入如下代码:
function max(num1, num2)
if (num1 > num2) then
result = num1;
else
result = num2;
end
return result;
end
print("1,2 max is",max(1,2))
保存退出。
步骤3:测试LuaJIT,生成字节码并执行字节码。
生产字节码文件test
luajit -b test.lua test
执行字节码文件
luajit test
回显如下:
[root@ecs-lua src]# luajit test
1,2 max is2
[root@ecs-lua src]#
不要生成的文件名为*.o格式或者*.obj格式,例如:luajit -b test.lua test.o则在执行luajit test.o会报错
luajit: test.o:1: unexpected symbol near 'char(127)'