Ubuntu搭建Android架构so库交叉编译环境

目录


前言

需要将一些源码编译成Android可用的架构的so库

一、下载NDK并安装

https://developer.android.google.cn/ndk/downloads/


二、安装NDK

将下载下来的android-ndk-r23b-linux.zip解压在根目录,并配置环境

vi ~/.profile

在末尾出添加并保存

export ANDROID_NDK_ROOT="/home/marico/android-ndk-r23b"

然后再执行source ~/.profile

在终端上输入ndk-build,提示如下图所示,即安装成功。


三、配置交叉编译工具链

在android-ndk-r23b/build/tools目录有生成独立工具链的脚本make-standalone-toolchain.sh

make-standalone-toolchain.sh --install-dir=/tmp/android-toolchain --arch=arm64 --platform=android-29

--install-dir 工具链安装位置

--arch 编译的so库架构

--platform 编译平台

因为我编译的是Android arm64架构的,采用的是默认配置

android-ndk-r23b/toolchains/llvm/prebuilt/linux-x86_64/bin

配置工具链的环境

vi ~/.profile

在末尾出添加并保存

export TOOLCHAIN_PATH="$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin"

然后再执行source ~/.profile

至此,交叉编译环境已经搭建完成。


四、编写交叉编译脚本

相关推荐
淡唱暮念13 分钟前
Linux系统使用夸克网盘CLI上传服务器数据至网盘教程,解决大数据备份苦恼
linux·服务器·ubuntu
阿莫西林夹馍22 分钟前
ubuntu安装gitlab
linux·ubuntu·gitlab
奔跑吧 android23 分钟前
【车载audio】【AudioPolicyManager 01】【AudioPolicyClient 类介绍】
android·audio·audioflinger·aosp15·音频开发·车载音频·audiopolicym
悲伤小伞27 分钟前
Linux_应用层自定义协议与序列化——网络计算器
linux·服务器·c语言·c++·ubuntu
敲上瘾1 小时前
磁盘到 inode:深入理解 Linux ext 文件系统底层原理
android·linux·运维·文件系统
hewence11 小时前
Kotlin CoroutineScope解密
android·开发语言·kotlin
遇雪长安2 小时前
高通安卓设备DIAG端口启用指南
android·adb·usb·dm·qpst·diag·qxdm
一匹电信狗2 小时前
【Linux我做主】从 fopen 到 open:Linux 文件 I/O 的本质与内核视角
linux·运维·服务器·c++·ubuntu·小程序·开源
华章酱2 小时前
MySQL EXPLAIN 完全解读:从执行计划到索引优化
android·数据库·mysql
2501_915921432 小时前
Fastlane 结合 AppUploader 来实现 CI 集成自动化上架
android·运维·ci/cd·小程序·uni-app·自动化·iphone