[software development] 在deepin V25 x86上搭建龙芯loongarch64架构虚拟机
Tofloor
poster avatar
杀毒软件吧
deepin
2025-08-04 12:31
Author

为了方便在没有设备的条件下进行验证开发,特此尝试将视频:

【百看不如一用,在自己的电脑上体验龙芯生态】 https://www.bilibili.com/video/BV12n8izzEpz/

转为文字教程。不过就体验来看,这个效率属实难绷。有需要还是早日购买一台龙芯电脑,或者使用远程服务的好。

1.在deepin V25上安装QEMU。

linux可以直接从系统仓库中安装,

sudo apt install qemu-system-misc

Windows则要另外安装别的版本:https://qemu.weilnetz.de/w64/2025/

2.下载龙芯的交叉编译工具链。

从:https://github.com/loongson/build-tools/releases

下载不带glibc的版本就行。

image.png

在压缩包所在文件夹空白处右键,从终端打开,执行以下命令,从而将交叉编译工具加载到环境变量中:

sudo mkdir /opt/loongarch64_cross-toolchain/
sudo tar -vxf x86_64-cross-tools-loongarch64-binutils_2.41-gcc_13.2.0.tar.xz -C /opt/loongarch64_cross-toolchain/
export PATH=/opt/loongarch64_cross-toolchain/cross-tools/bin:$PATH

3.下载龙芯qemu的BIOS edk2 源代码并编译

下载地址:https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt

这个网址下有龙芯虚拟机BIOS的编译说明

image.png

我们根据说明来编译并获得BIOS文件就行:

Build LoongArch QEMU virtual machine firmware

[](https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt#build-loongarch-qemu-virtual-machine-firmware)

Get edk2 resouces

[](https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt#get-edk2-resouces)

git clone --recurse-submodule https://github.com/tianocore/edk2.git

Building LoongArch QEMU virt FW with GCC

[](https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt#building-loongarch-qemu-virt-fw-with-gcc)

export WORKSPACE=`pwd`
export GCC5_LOONGARCH64_PREFIX=loongarch64-unknown-linux-gnu-
export PACKAGES_PATH=$WORKSPACE/edk2
export EDK_TOOLS_PATH=$WORKSPACE/edk2/BaseTools
source edk2/edksetup.sh --reconfig
make -C edk2/BaseTools
source edk2/edksetup.sh BaseTools
build -b RELEASE -t GCC5 -a LOONGARCH64 -p OvmfPkg/LoongArchVirt/LoongArchVirtQemu.dsc

Test LoongArch QEMU virtual machine firmware

[](https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt#test-loongarch-qemu-virtual-machine-firmware)

qemu-system-loongarch64 \
-m 4G \
-M virt \
-smp 2 \
-cpu la464 \
-bios Build/LoongArchVirtQemu/RELEASE_GCC5/FV/QEMU_EFI.fd \
-serial stdio

Test LoongArch QEMU virtual machine OS

[](https://github.com/tianocore/edk2/tree/master/OvmfPkg/LoongArchVirt#test-loongarch-qemu-virtual-machine-os)

虽然但是,以上这段内容,在编译的时候横竖编译不过去,表现为:

image.png

连原视频作者都百思不得其解,不得已只好让他发送了一个编译好的现成的固件:QEMU_EFI.zip

或者,从安同社区的GinHub项目里,找到了一个编译好的现成固件:https://github.com/AOSC-Dev/LoongArchQemuVirtFirmware

4.下载loongnix的虚拟硬盘文件

需要注意的是,这里是为了省事,选择了直接下载龙芯旧世界的loongnix20.6的虚拟硬盘文件。但实际上,考虑到龙芯旧世界终将过去,新世界终将到来。

熟悉QEMU操作的,可以自行创建虚拟硬盘文件,自行安装自己想要的操作系统。

https://mirrors.ustc.edu.cn/loongnix/isos/Loongnix-20.6/

将下载到的.qcow2文件,放到和刚才的固件相同的文件夹下。

在这个文件夹内,右键打开终端,执行以下指令:

qemu-system-loongarch64 -cpu la464-loongarch-cpu -smp 8 -m 8G -net nic,model=e1000 -net user,hostfwd=tcp::2222-:22 -device virtio-gpu -device intel-hda -device nec-usb-xhci,id=xhci,addr=0x1b -device usb-tablet,id=tablet,bus=xhci.0,port=1 -device usb-kbd,id=keyboard,bus=xhci.0,port=2 -machine virt -hda Loongnix-20.6.cartoon.gui.loongarch64.qcow2 -bios QEMU_EFI.fd

再次强调一遍,这里是为了省事,选择了龙芯旧世界的loongnix20.6,但实际上,熟悉QEMU操作的,可以自行创建虚拟硬盘文件,自行安装自己想要的操作系统。

启动成功:

image.png

默认密码:Loongson20 (注意首字母大写)

Reply Favorite View the author
All Replies
晚秋(lateautumn)
Moderator
2025-08-04 17:52
#1

学习收藏,感谢楼主。kissing_heart

Reply View the author
deepin157
deepin
Ecological co-builder
2025-08-04 21:38
#2

学习了,感觉很复杂,搞不懂。

Reply View the author
兆兆嘟嘟嘟
deepin
2025-08-11 13:05
#3

报错。
image.png

Reply View the author
杀毒软件吧
deepin
2025-08-11 17:04
#4
兆兆嘟嘟嘟

报错。
image.png

Can not allocate memory?

会不会是分配8GB内存不够了?

Reply View the author