Windows平台Makefile文件交叉编译安卓64位库

确保您的应用支持 64 位设备

https://developer.android.google.cn/distribute/best-practices/develop/64-bit

环境搭建

下载使用Cygwin,安装make,gcc等必要组件

使用VS自带的make

Makefile教程参考:https://blog.csdn.net/weixin_38391755/article/details/80380786

如此看来 Android.mk 和 Application.mk 只是自定义格式的Makefile文件,相关教程:https://www.cnblogs.com/SoaringLee/p/10532102.html

下载并配置NDK,参考:

https://blog.csdn.net/fengbingchun/article/details/44491763

https://www.cnblogs.com/exmyth/p/3576731.html

配置Makefile文件,参考第三方库官网要求

编译32位和64位版本时设置架构参数为:

APP_ABI := armeabi-v7a arm64-v8a

遇到的坑:

1、出包成功后测试64位包运行状况,出现了读取资源闪退的情况,追踪后发现是 unsigned long类型的坑,即unsigned long int,该类型在32位系统长度为32位,64位系统长度为64位。导致读取文件头长度出错。改为unsigned int,固定为32位就好了。

2、指针类型转换出错,有些代码将64位的指针的值强制转换成了u32类型,改成转换成size_t即可改成跨平台的类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逍遥游侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值