使用CMake交叉编译Arm Linux程序

下载安装aarch64-linux-gnu-gcc arm交叉编译工具链

bash 复制代码
 apt-get install aarch64-linux-gnu-gcc
 apt-get install aarch64-linux-gnu-gcc++

创建编译目录构建makefle

注意,工具链文件的指定一定要紧跟cmake命令之后,不能放到 ... 后面构建arm架构cmake

bash 复制代码
 mkdir arm_build && cd arm_build
 cmake -DCMAKE_TOOLCHAIN_FILE=../arm_linux_setup.cmake ..

工具链文件

工程里新建一个文件叫arm_linux_setup.cmake

arm_linux_setup.cmake内容如下

bash 复制代码
# 指定目标系统
set(CMAKE_SYSTEM_NAME Linux)
# 指定目标平台
set(CMAKE_SYSTEM_PROCESSOR arm)
 
# 指定交叉编译工具链的根路径
set(CROSS_CHAIN_PATH /usr/bin)
# 指定C编译器
set(CMAKE_C_COMPILER "${CROSS_CHAIN_PATH}/aarch64-linux-gnu-gcc")
# 指定C++编译器
set(CMAKE_CXX_COMPILER "${CROSS_CHAIN_PATH}/aarch64-linux-gnu-g++")
相关推荐
LongRunning29 分钟前
【Linux】RK3568(三)操作-视频流
linux
Discipline~Hai31 分钟前
Linux网络编程02-TCP协议
linux·网络·tcp/ip·嵌入式·linux网络编程
abc light1 小时前
Linux TCP网络
linux·网络·tcp/ip
Jason_zhao_MR1 小时前
电能质量监测为什么需要PTP精确时钟同步
linux·单片机·嵌入式硬件·嵌入式
视觉小萌新1 小时前
A1——基于AMD-48G显卡下载Gemma4模型
linux·ubuntu
不会就选b2 小时前
数据结构之栈的算法题(OJ)
linux·数据结构·算法
刘某的Cloud3 小时前
k8s部署prometheus架构规则
linux·运维·kubernetes·prometheus·监控
mounter6253 小时前
从 2026 LSFMM/BPF 峰会看 eBPF 生态演进:技术变革、工具全景与资源泄漏诊断实战
linux·linux kernel·kernel
M78佐菲3 小时前
Linux学习笔记:网络通信
linux·笔记·学习·算法
AAA代码批发商3 小时前
Days37 Linux C 网络编程:UDP、TCP 与 HTTP 协议实战详解
linux·c语言·网络