相关链接:Windows 下编译 LuaJIT
懒人与伸手党可以直接看最底部。
为什么使用 LuaJIT
Lua 官方版的编译嵌入相对简单,但是为什么要用 LuaJIT 呢?我所了解到的优势有:
更高的运行效率。
支持运行 Lua 编译后的机器码。
虽然 Lua 也支持编译脚本,但是编译出来的机器码文件并不是跨平台的,也就是说在
PC 上编译的脚本在 Android 中无法使用。至于如何编译 Android 上使用的脚本,至今没有找到方案。
脚本的编译不仅可以提高载入速度,更可以一定程度上保护源码,避免被篡改。这也是我使用 LuaJIT 的主要原因。
LuaJIT NDK 编译
系统环境:Ubuntu 17 x64
Windows 下使用 Cygwin 应该也是可以的。
由于我们系统是64位,编译的目标很可能是32位的,所以先确认安装了32位所需的编译环境:
sudo apt-get install libc6-dev-i386
NDK 配置
已经配置好 NDK 的可以略过本章节。
去 NDK 官网下载适合自己的版本并解压。这里使用的是 android-ndk-r14b-linux-x86_64.
解压放在 /opt/android/ndk.
然后配置环境变量。这里直接配置全局的环境变量。修改 /etc/proile 在最后加上
export PATH=/opt/android/ndk:$PATH
注销重新登录一下使之生效。测试下命令 ndk-build,能运行则是配置完毕。
编译
首先去 LuaJIT 官网