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

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


四、编写交叉编译脚本

相关推荐
赴遥31 分钟前
[出现错误 2147942402 (0x80070002) (启动“ubuntu2004.exe”时)]
ubuntu·win11·wsl2
JulyYu1 小时前
【Android】针对非SDK接口的限制解决方案
android·客户端
猪哥帅过吴彦祖1 小时前
Flutter 系列教程:应用导航 - Navigator 1.0 与命名路由
android·flutter·ios
一直向钱2 小时前
Ubuntu 服务器的无法使用WinSCP低版本连接登录
linux·服务器·ubuntu
2501_916008892 小时前
iOS 跨平台开发实战指南,从框架选择到开心上架(Appuploader)跨系统免 Mac 发布全流程解析
android·macos·ios·小程序·uni-app·iphone·webview
stevenzqzq3 小时前
Android Hilt教程_构造函数
android
鹏多多3 小时前
flutter图片选择库multi_image_picker_plus和image_picker的对比和使用解析
android·flutter·ios
山川而川-R3 小时前
ubuntu摄像头型号匹配不上_11-6
linux·windows·ubuntu
GISer_Jing3 小时前
Flutter开发全攻略:从入门到精通
android·前端·flutter