Rust交叉编译简述 —— Arm

使用系统:WSL2 ------ Kali(Microsoft Store)

命令列表

bash 复制代码
rustup target list # 当前官方支持的构建目标架构列表
rustup target add aarch64-unknown-linux-gnu # 添加目标架构

sudo apt-get install gcc-13-aarch64-linux-gnu gcc-13-aarch64-linux-gnu # 下载目标工具链,可以把13删了
sudo dpkg --add-architecture arm64 # 解决后面使用qemu-aarch64的lib问题
sudo apt update
sudo apt install libc6:arm64

cargo new TestArm 
mkdir .cargo && cd .cargo && touch config.toml # 修改配置文件
vim config.toml

写入:

复制代码
[build]  
target = "aarch64-unknown-linux-gnu"

[target.aarch64-unknown-linux-gnu]  
linker = "aarch64-linux-gnu-gcc"

使用qemu进行测试:

bash 复制代码
┌──(songs㉿LAPTOP-UKGHM5UJ)-[~/code/rust/Test]
└─$ qemu-aarch64 target/aarch64-unknown-linux-gnu/debug/Test
Hello, world!
相关推荐
Ro Jace5 小时前
计算机专业基础教材
java·开发语言
代码游侠5 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
devmoon5 小时前
运行时(Runtime)是什么?为什么 Polkadot 的 Runtime 可以被“像搭积木一样”定制
开发语言·区块链·智能合约·polkadot·runtmie
时艰.5 小时前
Java 并发编程 — 并发容器 + CPU 缓存 + Disruptor
java·开发语言·缓存
忆~遂愿6 小时前
GE 引擎进阶:依赖图的原子性管理与异构算子协作调度
java·开发语言·人工智能
沐知全栈开发6 小时前
API 类别 - 交互
开发语言
人道领域6 小时前
SSM框架从入门到入土(AOP面向切面编程)
java·开发语言
铅笔侠_小龙虾6 小时前
Flutter 实战: 计算器
开发语言·javascript·flutter
2的n次方_6 小时前
Runtime 执行提交机制:NPU 硬件队列的管理与任务原子化下发
c语言·开发语言
2501_944711437 小时前
JS 对象遍历全解析
开发语言·前端·javascript