使用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++")
相关推荐
元亓亓亓1 分钟前
LeetCode热题100--20. 有效的括号--简单
linux·算法·leetcode
实心儿儿18 分钟前
Linux —— 基础开发工具4
linux·运维·服务器
diegoXie39 分钟前
WSL2 跨系统文件移动
linux·ubuntu
一尘之中39 分钟前
Linux命令行查看磁盘大小完全指南
linux·运维·ai写作
马儿能够一直跑1 小时前
同一个环境中安装两个不同版本esp-idf的python冲突解决方案
linux·运维·服务器
小雪_Snow1 小时前
Rocky 操作防火墙
linux
tang_vincent1 小时前
Linux物理内存管理-引导内存分配器
linux
切糕师学AI1 小时前
ARM 架构中,R13栈指针(SP)是什么?
arm开发·寄存器·sp
vortex51 小时前
从 Scoop 故障看 Windows 与 Linux 软硬链接与权限机制的底层差异
linux·运维·windows
贝塔实验室1 小时前
Altium Designer 集成库介绍
arm开发·数据库·驱动开发·硬件工程·射频工程·基带工程·精益工程