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

相关推荐
向上的车轮2 小时前
MATLAB学习笔记(七):MATLAB建模城市的雨季防洪排污的问题
笔记·学习·matlab
前端小崔3 小时前
从零开始学习three.js(18):一文详解three.js中的着色器Shader
前端·javascript·学习·3d·webgl·数据可视化·着色器
逼子格3 小时前
硬件工程师笔记——二极管Multisim电路仿真实验汇总
笔记·嵌入式硬件·硬件工程师·multisim·硬件工程师学习·电子器件·电路图
「QT(C++)开发工程师」3 小时前
STM32 | FreeRTOS 递归信号量
python·stm32·嵌入式硬件
龙湾开发3 小时前
计算机图形学编程(使用OpenGL和C++)(第2版)学习笔记 10.增强表面细节(二)法线贴图
c++·笔记·学习·图形渲染·贴图
liang_20264 小时前
【HT周赛】T3.二维平面 题解(分块:矩形chkmax,求矩形和)
数据结构·笔记·学习·算法·平面·总结
虾球xz4 小时前
游戏引擎学习第290天:完成分离渲染
c++·人工智能·学习·游戏引擎
虾球xz4 小时前
游戏引擎学习第285天:“Traversables 的事务性占用”
c++·学习·游戏引擎
芯眼4 小时前
ALIENTEK精英STM32F103开发板 实验0测试程序详解
开发语言·c++·stm32·单片机·嵌入式硬件·社交电子
百里东风4 小时前
STM32IIC协议基础及Cube配置
stm32·单片机·嵌入式硬件