x86上运行LoongArch的环境

很多朋友只有x86的系统,因为我们上学时代和工作机大部分都x86系统。loongson推出LoongArch指令集后,也想尝尝鲜或者作为一个开发者又不想买新的机器,此时就可以用到我下边为大家介绍的方法。

此处也给大家提供一个debian社区发布的官方的文档:

debian社区发布:LoongArch/sbuildQEMU - Debian Wiki

也可以参考我为大家已经整理好的资料 GitHub - loongson-zn/qemu-debian

如果你翻墙困难,我将整理的readme粘贴到此处:

宿主机环境

架 构:x86_64

系统环境:debian bookworm

具体操作步骤:

  • 安装qemu-user

    root@debian:~# apt install binfmt-support
    root@debian:~# apt build-dep qemu-user-static
    root@debian:~# git clone https://github.com/qemu/qemu.git
    root@debian:~# cd qemu
    root@debian:~/qemu# ./configure --static --disable-system --target-list=loongarch64-linux-user
    root@debian:~/qemu# make
    root@debian:~/qemu# cp build/loongarch64-linux-user/qemu-loongarch64 /usr/bin/qemu-loongarch64-static
    root@debian:~/qemu# cat >/tmp/qemu-loongarch64 <<EOF
    package qemu-user-static
    type magic
    offset 0
    magic \x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02\x01
    mask \xff\xff\xff\xff\xff\xff\xff\xfc\x00\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff
    interpreter /usr/bin/qemu-loongarch64-static
    EOF

    root@debian:~/qemu# update-binfmts --import /tmp/qemu-loongarch64

  • 制作LA最小镜像

    root@debian:~# apt install debootstrap sbuild debian-ports-archive-keyring
    root@debian:~# debootstrap --foreign --arch=loong64 --variant=buildd --include=debian-ports-archive-keyring --verbose --components=main --keyring=/etc/apt/trusted.gpg.d/debian-ports-archive-2023.gpg --resolve-deps --extra-suites=unreleased unstable /srv/chroots/sid-loong64-sbuild/ http://ftp.ports.debian.org/debian-ports
    root@debian:~# cd /srv/chroots/sid-loong64-sbuild/
    root@debian:/srv/chroots/sid-loong64-sbuild# cp /usr/bin/qemu-loongarch64-static usr/bin/
    root@debian:/srv/chroots/sid-loong64-sbuild# chroot .
    I have no name!@loongson01:/# /debootstrap/debootstrap --second-stage

  • 准备gcc编译器(我提供的gcc及qemu是支持lasx及lsx向量的,如果不需要,用debian仓库安装即可)

    git clone https://github.com/loongson-zn/qemu-debian.git
    cd qemu-debian/gcc_13.2.0-7.1_nodbg
    apt install ./*
    apt install gcc gfortran
    mount -t proc proc proc
    mount -t sysfs sys sys
    mount -t devtmpfs dev dev
    mount -t devpts devpts dev/pts
    mount -t tmpfs shmfs dev/shm

写这篇博客是在2023.12.15,LA还处于正在推进debian社区 的阶段,此时的地址为:

bash 复制代码
#root@loongson01:~# cat /srv/chroots/sid-loong64-sbuild/etc/apt/sources.list     
# binary default
deb http://ftp.ports.debian.org/debian-ports unstable main 
deb http://ftp.ports.debian.org/debian-ports unreleased main
相关推荐
倔强的石头_9 分钟前
【Linux指南】动静态库与链接机制:从原理到实践
linux
赏点剩饭77833 分钟前
linux中的hostpath卷、nfs卷以及静态持久卷的区别
linux·运维·服务器
神鸟云40 分钟前
DELL服务器 R系列 IPMI的配置
linux·运维·服务器·网络·边缘计算·pcdn
herderl1 小时前
**僵尸进程(Zombie Process)** 和**孤儿进程(Orphan Process)**
linux·运维·服务器·网络·网络协议
lepton_yang1 小时前
Zephyr下控制ESP32S3的GPIO口
linux·嵌入式硬件·esp32·zephyr
泽02021 小时前
Linux 编译器 gcc 与 g++
linux·运维·服务器
G_H_S_3_2 小时前
【网络运维】Playbook项目实战:基于 Ansible Playbook 一键部署 LNMP 架构服务器
linux·运维·服务器·网络·ansible
yuxb733 小时前
Ansible 学习笔记:变量事实管理、任务控制与文件部署
linux·运维·笔记
岚天start3 小时前
Linux sar命令详细使用指南
linux·运维·服务器·负载·sar·磁盘io·sysstat