透过 QEMU 初步体验龙架构

透过 QEMU 初步体验龙架构

发布日期:2022-09-17

QEMU、GCC 上游最近正式宣布支持龙架构,它是龙芯中科基于 MIPS 国产自主研发的指令集,也在某程度上受到 RISC-V 启发:

  • QEMU 7.1.0+
  • GCC 12.1.0+

据说上游 Linux 内核至 5.19 起也初步支持龙架构(源:LoongArch CPU Support Merged For Linux 5.19 - But It Won’t Work For A Booting System Yet - Phoronix),可是很遗憾,这初步支持并不足以在龙架构上启动一个完整的 Linux 系统。

这代表着您即便没有购买龙芯 SoC 也可以透过 QEMU 用户空间模拟器 有限度地体验龙架构,这也正是本文章的焦点。

先决条件

您必须熟悉 Linux 操作。本文章中的说明及命令适用于 Ubuntu 22.04。这并不代表您不能使用别的 Linux 发行版完成该文章所描述的操作,但您极有可能需要因应您的发行版调整您所输入的命令。本文章的作者将不会对您因误操作损坏系统承担任何责任。

为免对您日常使用的系统造成破坏,建议您在新建的 Ubuntu 22.04 虚拟机内进行相关操作。当然,如果您的操作系统不是 Linux(如 Windows、macOS)或您使用的 UOS 系统禁用了开发者模式,这或许是您唯一可行的选项。

事前准备

因为 QEMU、GCC 也是最近才正式支持龙架构,所以您并不能透过 Ubuntu 默认的仓库直接下载安装相应的软件包。因此,我们需要获取并自行编译最新稳定版本 QEMU、GCC 的源代码。

下载 QEMU、GCC 前,我们先建好一些目录:

$ mkdir -p $HOME/opt/qemu $HOME/opt/cross $HOME/src

把工作目录设置为 $HOME/src

$ pushd $HOME/src

我们将把 QEMU 安装在 $HOME/opt/qemu 下,GCC 在 $HOME/opt/cross 下,把源代码存放在 $HOME/src 下。当然,您也可以选择别的目录。

QEMU

参考文章:Hosts/Linux - QEMUGCC Cross-Compiler - OSDev Wiki

截至 2022-09-17,最新的 QEMU 版本是 7.1.0,因此我们以 QEMU 7.1.0 为准。

更新仓库元数据:

$ sudo apt update

下载编译 QEMU 所需的依赖包:

$ sudo apt install -y build-essential \
    git \
    libglib2.0-dev \
    libfdt-dev \
    libpixman-1-dev \
    zlib1g-dev \
    ninja-build

从 QEMU 官方网站下载 7.1.0 版本源代码:

$ wget https://download.qemu.org/qemu-7.1.0.tar.xz

解压缩:

$ tar xvf qemu-7.1.0.tar.xz

创建一个编译用的新目录 build-qemu

$ mkdir build-qemu/

进去:

$ pushd build-qemu/

出口环境变量:

$ export PREFIX="$HOME/opt/qemu"
$ export TARGET_LIST="loonga
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值