一、下载luajit源码
1、linux下直接下载:
a、使用curl下载:https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz
b、git下载地址;https://github.com/LuaJIT/LuaJIT.git
2、Windows下载好zip文件,下载地址:https://github.com/LuaJIT/LuaJIT.git,上传到linux机器;使用unzip命令解压
二、下载NDK
1、下载地址:https://github.com/android/ndk/wiki/Unsupported-Downloads 并且解压
2、如果编译v8a架构的建议NDK使用26
三:安装clang编译
1、直接使用命令:yum install clang
2、原因:高版本的ndk采用clang的编译方式
四:修改LuaJIT-2.1.0-beta3\src\Makefile
1、修改原因:高版本NDK使用clang作为编译器,而MakeFile里面的路径处理比较旧,在路径拼上问题,需要修改;避免链接的时候异常,无法生成.a文件
2、进入源码目录:cd LuaJIT-2.1.0-beta3
3、vim src/Makefile ,修改src/Makefile 第727行;并保存退出
修改前
修改后
四、编译.a文件
1、在源码目录执行:
make HOST_CC=clang CROSS=/home/harmony/android-ndk-r26b/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21- CC=clang TARGET_SYS=Linux TARGET_FLAGS="-march=armv8-a" TARGET=arm64
大家可以根据需求修改自己的参数
2、生成文件libluajit.a在源码目录的src目录下面