Qemu 5.2 - VNC 运行 后没有任何显示

Qemu 5.2 - nothing shows up after VNC running

我正在尝试使用 QEMU 5.x 进行研究。

我从 qemu.org 获得了 QEMU 5.2 源代码并按照说明安装。

但是,当我尝试通过此命令 运行 虚拟机时:

qemu-system-x86_64 \
-monitor stdio \
--enable-kvm \
-m 4096 \
-cdrom ubuntu-20.04.iso \
-drive file=img.qcow,if=virtio \
-boot c
-rtc base=localtime \
-device virtio-keyboard-pci \
-vga virtio \

然后打印以下文本:

QEMU 5.2.0 monitor - type 'help' for more information
(qemu) VNC server running on 127.0.0.1:5900

然后什么也没有显示,而 QEMU 4.x(以前使用过)弹出 window 显示访客 ubuntu 的 GUI。

我正在使用 ubuntu 20.04。希望有人对此有突破..

消息说此QEMU 正在使用VNC 协议进行图形输出。您可以将 VNC 客户端连接到它告诉您要查看图形输出的 127.0.0.1:5900 端口。

如果您想要的是原生 X11 window (GTK),那么问题可能是您没有安装必要的库来构建 GTK 支持。 QEMU 的配置脚本的默认行为是“构建该主机为其安装库的所有可选功能,并忽略库不存在的功能”。因此,如果您在构建 QEMU 时没有任何 GTK/SDL 等库,那么您将在生成的 QEMU 二进制文件中获得的唯一东西是最低公分母 VNC 支持。如果您希望配置为缺少的功能报告错误,那么您需要将适当的 --enable-whatever 选项传递给它以强制启用该功能(在本例中为 --enable-gtk)。

如果你运行正在 Ubuntu 并且你的 apt sources.list 文件中有 deb-src 行,安装所有依赖项的最简单方法可以让你与真正的 Ubuntu QEMU 软件包相同的功能列表是 运行 “apt build-dep qemu”。我建议你这样做,然后重新构建 QEMU,将 --enable-gtk 传递给配置,这样你就可以确认是否安装了必要的依赖项。