Android车机DIY开发之学习篇(七)NDK交叉工具构建

Android车机DIY开发之学习篇(七)NDK交叉工具构建

1.ubuntu安装GCC

sudo apt-get update

sudo apt-get install gcc g++

sudo gcc --version

sudo g++ --version

2.测试GCC

VSCODE中新建Hello.c编译

#include <stdio.h>

int main(void)

{

printf("Hello, this is a program compiled by ndk-cross-compiler!\n");

}

alientek@alientek:~/VSCODESOURCE$ gcc Hello.c -o hello

alientek@alientek:~/VSCODESOURCE$ ./hello

Hello, this is a program compiled by ndk-cross-compiler!

alientek@alientek:~/VSCODESOURCE$

此程序无法应用到ARM开发板上

3.安装android-ndk-r17c交叉编译工具,使可以运行到android系统上

ndk官方下载地址

下载后解压文件进入build/tools执行以下命令

./make-standalone-toolchain.sh --install-dir=/tmp/my-android-toolchain/ --toolchain=aarch64-linux-android

在Bashrc中增加

export PATH=$PATH:/tmp/my-android-toolchain/bin

export CC="aarch64-linux-android-gcc"

export CXX="aarch64-linux-android-g++"

使生效

source ~/.bashrc

4. 编译测试

aarch64-linux-android-gcc Hello.c -o hello

file *

hello: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /system/bin/linker64, not stripped

相关推荐
易水寒陈8 分钟前
单片机实现的工厂模式
单片机
ha204289419440 分钟前
Linux操作系统学习记录之----自定义协议(网络计算器)
linux·网络·学习
振华说技能1 小时前
SolidWorks学习大纲-从基础到全面精通,请看详情
学习
曦月逸霜1 小时前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
im_AMBER1 小时前
Leetcode 101 对链表进行插入排序
数据结构·笔记·学习·算法·leetcode·排序算法
Mr -老鬼1 小时前
Rust与Go:从学习到实战的全方位对比
学习·golang·rust
laplace01231 小时前
# 第四章|智能体经典范式构建 —— 学习笔记(详细版)
笔记·学习
程序猿零零漆1 小时前
Spring之旅 - 记录学习 Spring 框架的过程和经验(十四)SpringMVC的请求处理
学习·spring·pandas
别了,李亚普诺夫1 小时前
PCB设计大师篇笔记
笔记·嵌入式硬件·学习
西瓜堆1 小时前
提示词工程学习笔记: IT技术行业提示词推荐
笔记·学习