Portal:Arm/AArch64
openSUSE ARM 团队正在努力使 64 位 ARM 变体 (AArch64) 尽可能地稳定!目前进展良好。
最新的 openSUSE Tumbleweed AArch64 自动化测试结果可在 https://openqa.opensuse.org/group_overview/3 上找到。软件包在 https://build.opensuse.org/project/show/openSUSE:Factory:ARM 上构建。
测试 openSUSE 镜像
如果您想测试 openSUSE Leap 或 openSUSE Tumbleweed,以及 AArch64 镜像,请访问 openSUSE:AArch64 页面。
使用 qemu 设置本地构建系统
默认情况下,qemu-linux-aarch64 用于在 OBS 内部构建软件包。这种方式比在 Foundation Model 内部构建快得多。
- 安装 osc 并从 openSUSE:Tools 项目构建软件包
- 如果需要,请从 openSUSE:Tools 项目安装 qemu-linux-aarch64
to do chroot builds. It is not needed for KVM builds, OBS will install the right one automatically.
- 您需要在 x86_64 或 aarch64 系统上。i586 系统将无法工作。
- 对于 chroot 构建,请调用
osc build standard aarch64
- 对于 kvm 构建,请调用
osc build --vm-type=kvm standard aarch64
它将自动设置一个 aarch64 系统并运行构建。
使用 Foundation Model 设置本地构建系统 (已弃用)
- 安装 osc 并从 openSUSE:Tools 项目构建软件包
- 从 http://www.arm.com/products/tools/models/fast-models/foundation-model.php 下载模拟器(需要在 ARM 网站上注册一个免费帐户)
- 将可执行文件和库提取并安装到 /usr/lib/build/emulator/ 目录
- 从 http://releases.linaro.org/13.01/openembedded/aarch64 将 img-foundation.axf 镜像下载到 /usr/lib/build/emulator/ 目录
- 修补镜像中的内核参数
模拟器不允许传递内核参数。因此,您需要在二进制文件内部修补编译的参数字符串(以 root 身份)。
sed -i 's,root=/dev/vda2,root=/dev/vda ,' img-foundation.axf
- 通过编辑 /usr/lib/build/emulator/emulator.sh 启用模拟器。文件内部有 aarch64 模拟器处理的示例。只需删除文件开头的警告和退出即可。
运行构建
- osc co openSUSE:Factory:ARM <PACKAGE>
- cd <PACKAGE>
- osc build --vm-type emulator standard aarch64 <PACKAGE>.spec
这将通过模拟器构建软件包。
: