linux环境下编译,安卓平台使用的luajit库

一、下载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目录下面

相关推荐
kk”6 小时前
Linux的组和权限管理
linux·运维·服务器
mohesashou8 小时前
红帽linux的K8S部署
linux·kubernetes·ansible
xiaoye-duck9 小时前
《Linux网络编程》UDP Socket 编程实战:从 Echo 回显、通用字典服务到套接字封装全流程
linux·网络·udp
拂拉氏9 小时前
【Linux】 开发工具(Makefile、git、cgdb)解析与对于操作系统的基础认识
linux·git·操作系统·makefile·cgdb
孙克旭_9 小时前
Docker 镜像构建|Vue+SpringBoot+Go 多语言项目 Dockerfile 案例
linux·运维·vue.js·spring boot·docker·dockerfile
life码农10 小时前
Linux截取Nginx指定时间段日志的三种方法(grep/awk/sed)
linux·nginx
Dawn-bit10 小时前
Linux网络进阶:TCP三次握手和四次挥手与TCP连接状态
linux·服务器·网络·tcp/ip·云计算·智能路由器
NJCloud11 小时前
MooseFS 分布式存储部署与高可用架构实践
linux·运维·分布式·架构
mounter62511 小时前
将 RDMA 引入容器:Soft-RoCE (RXE) 网络命名空间支持深度解析
linux·linux kernel·kernel·rdma·net namespace