使用 docker 进行 QEMU W64 的交叉编译

本文记录在 Debian 12 上利用 docker 进行 QEMU W64 的交叉编译步骤

安装 docker 编译环境

首先,在Debian 12系统中通过以下命令可以安装Docker:

启动Docker服务:

在 docker 新目录中创建 Dockerfile 文件

配置 docker 运行环境

首先配置 docker.io 的 registry 镜像,新建 /etc/docker/daemon.json 文件,内容如下:

以上表示 docker daemon 使用 1panel.dev 的 docker 镜像

然后在 docker 新目录中运行以下命令:

docker 根据目录中的 Dockerfile 指令构建运行环境

准备 QEMU W64 编译环境

首先运行 docker 镜像,执行以下命令:

然后,接入 docker 容器的控制台,执行以下命令:

接下来安装交叉编译 QEMU W64 所需要的工具

然后下载安装 msys2 的 mingw64 软件包

1、

2、

3、可选,基本编译工具,在 debian cross compile 中不需要

4、基本库

5、GTK,SDL和SLiRP支持

6、SPICE和QXL支持

7、OpenGL支持

8、capstone支持

9、libssh支持

10、libusb支持

11、pthread支持

12、document支持

13、JACK支持

14、USB net redir支持

15、SASL支持

16、libcbor支持

17、snappy支持

18、libnfs支持

19、nettle支持

20、libgcrypt支持

21、dtc支持

8、设置 pkgconfig 环境变量

9、编译

然后下载 cygwin 的软件包,转换为 deb 格式文件

通过以下命令激活 python 虚拟环境:

安装 zstd 支持包

下载 cygwin 的软件包

安装 cygwin 的软件包

在 QEMU 根目录创建文件 x86_64-w64-mingw32.txt ,内容如下:

获取 libslirp :

获取 virgl 来实现 3D 硬件加速:

创建新目录来存放编译后产生的 QEMU 依赖组件:

安装 libslirp:

安装 virgl


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

en_USEnglish