目标
本文演示了如何使用 ADE 为 arm64 系统和希望使用 arm64 . 本文档将涵盖使用 ADE 的本地和非本地系统。
原生 arm64 系统
以下部分描述了在 arm64 基于系统的系统上启动 ade 环境所需的过程。
先决条件
确保已安装 ADE 并 .adehome 已创建文件。 要完成此操作,请按照 安装 ADE 中的说明进行操作,然后 设置 ADE 主页和项目结帐 。
启动 ADE arm64 Docker
进入开发目录并启动 ADE docker:
$ cd ~/adehome/AutowareAuto
$ ade --rc .aderc-arm64 开始 --update --enter |
非原生 arm64 系统
下面的部分描述了使用Docker、binfmt和qemu运行多架构系统的过程。
先决条件
在系统上运行替代架构之前,确保可以在本机架构上运行ADE和autotowareauto。使用amd64系统的用户应该遵循使用ADE安装中的说明,并确保所有依赖项都正确安装。下面将假设已经安装了所有ADE和AutowareAuto依赖项。 笔记
本节使用的仿真库目前只与x86_64兼容。使用下面的命令检查你的系统架构:
要检查 Docker 兼容的系统,请运行以下命令:
以下输出应如下所示:
$ docker buildx ls
名称/节点驱动程序/端点状态平台
默认 * 码头工人
默认默认运行linux/amd64、linux/386 |
要检查您的系统当前是否与 arm64 系统不兼容,请运行:
$ docker run --rm -t arm64v8/ubuntu uname -m |
此输出应出错并指示未找到库。
为多架构仿真配置 Docker
首先,安装仿真和二进制支持库,这将允许Docker运行多个架构。库qemu和qemu-user-static提供了模拟支持,允许Docker在x86_64环境上解释替代架构。内核模块binfmt-support允许在系统管理员级别注册和调用二进制解释器。
$ sudo apt-get install qemu binfmt-support qemu-user-static |
最后,调用qemu-user-static docker映像来安装和链接各种体系结构的解释器和体系结构。
$ docker run --rm --privileged multiarch/qemu-user-static --reset -p yes |
执行如下命令检查注册表是否安装成功,并确保注册表干净退出。
$ docker run --rm -t arm64v8/ubuntu uname -m
...
aarch64 |
其他检查包括在Docker中运行buildx选项。这将输出更多不同的构建类型供Docker使用。
笔记
会有一个初步警告,Docker 试图建立的镜像架构与系统架构不同。
警告:请求的图像平台 (linux/arm64) 与检测到的主机平台 (linux/amd64) 不匹配,并且未请求特定平台
启动 ADE
现在设置已完成, arm64 可以毫无问题地启动 ADE 映像
$ ade --rc .aderc-arm64 开始 --update --enter |
警告
由于 Docker 中发生的二进制转换,与原生配置相比,在非原生环境中启动 ADE 会导致性能大幅下降; 大约是原生系统的 5 倍。
|