新兴县建设局网站,汉中网站设计,电商平台定制,网络服务协议需要交印花税吗1. 引言
工作中常用电脑主机CPU为x86架构#xff0c;有时由于产品需要#xff0c;我们需要编译aarch64架构的SDK或者应用程序供使用或者测试。
一种比较快捷的方式是使用aarch64的CPU构建相应操作系统#xff0c;实现真机运行。但在无arm架构CPU环境下#xff0c;我们可否…1. 引言
工作中常用电脑主机CPU为x86架构有时由于产品需要我们需要编译aarch64架构的SDK或者应用程序供使用或者测试。
一种比较快捷的方式是使用aarch64的CPU构建相应操作系统实现真机运行。但在无arm架构CPU环境下我们可否x86配合相应软件模拟aarch64指令集实现程序的正常运行呢答案是可行的下述方法将介绍一种使用qemu 容器化部署方式使我们可在x86机器上的Docker运行arm64容器。
2. 容器构建流程
下载qemu-aarch64-static.tar.gz
wget https://github.com/multiarch/qemu-user-static/releases/download/v5.1.0-2/qemu-aarch64-static.tar.gz解压、移动到/usr/bin/下、修改权限
tar -zxvf qemu-aarch64-static.tar.gz
sudo cp qemu-aarch64-static /usr/bin/
chmod x /usr/bin/qemu-aarch64-static注册qemu解释器
docker run --rm --privileged multiarch/qemu-user-static:register --reset
测试arm64容器是否可以启动
docker run -t -v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static arm64v8/ubuntu:20.04 uname -m# 返回
aarch64说明可以运行arm64容器了接下来便可将交叉编译好的aarch64应用程序移至容易内运行。
注意由于qemu本质上是使用x86指令对arm64指令集进行仿真(虚拟机)因此实际运行性能会比真机差很多 (可能耗时差几十甚至上百倍)。
3. 参考
https://www2.jianshu.com/p/a1c90b4af5cf https://blog.csdn.net/ccgshigao/article/details/109631585 https://github.com/multiarch/qemu-user-static