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

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


四、编写交叉编译脚本

相关推荐
shaominjin12310 分钟前
OpenCV 4.1.2 SDK 静态库作用与功能详解
android·c++·人工智能·opencv·计算机视觉·中间件
东坡肘子1 小时前
Swift 官方发布 Android SDK | 肘子的 Swift 周报 #0108
android·swiftui·swift
Storm-Shadow8 小时前
Android OpenGLES视频剪辑示例源码
android·opengles·视频滤镜
双桥wow8 小时前
android 堆栈打印
android
fruge11 小时前
Vue Pinia 状态管理实战指南
前端·vue.js·ubuntu
爱学习的大牛12313 小时前
使用C++开发Android .so库的优势与实践指南
android·.so·1024程序员节
搬砖的小码农_Sky13 小时前
Linux(Ubuntu)操作系统下文件的解压
linux·ubuntu
JustNow_Man15 小时前
Cline中模型识别任务与clinerules相关性的实现逻辑
linux·运维·ubuntu
帅锅锅00715 小时前
SeLinux Type(类型)深度解析
android·操作系统