升级到 macOS Catalina 后 Qemu 没有响应
Qemu not responding after upgrading to macOS Catalina
将我的 Mac 升级到 Catalina 后,我不能再使用 qemu。每当我尝试启动它时,它就会挂起。当 qemu window 处于活动状态时,菜单栏也没有响应。
运行 qemu-system-i386 --help
确实有效。
Qemu 版本:4.1.0
编辑:通过 -nographic
修复了问题。
这是 Catalina 行为变化的结果,它打破了 QEMU Cocoa 前端设计中的假设。我们对 QEMU 代码进行了更改(上游 git commit dff742ad27efa474)以避免挂起;这将出现在即将发布的 QEMU 4.2 版本中。同时,一种解决方法是避免使用 Cocoa 前端(例如,使用 -nographic 完全关闭图形,或使用其他显示前端之一,如 VNC 或 Spice)。
(Catalina 行为更改的技术细节是 NSApplicationDelegate::applicationDidFinishLaunching 记录在处理任何事件之前调用它 [https://developer.apple.com/documentation/appkit/nsapplicationdelegate/1428385-applicationdidfinishlaunching ],这在旧版本的 OSX,但在 Catalina 中,至少有一个事件在 applicationDidFinishLaunching 之前发送到应用程序,这在 QEMU 中触发了死锁。)
关于 OSX 行为变化的反馈报告显然已提交给 Apple,错误编号为 FB7380815。
获取 SDL
brew install sdl2
和 Qemu 源代码
git clone https://git.qemu.org/git/qemu.git
然后使用
配置
./configure --target-list=i386-softmmu,x86_64-softmmu --enable-sdl --disable-cocoa --enable-sdl-image
然后
make & make install
这会部署使用 SDL 而不是 cocoa 的可用 qemu 二进制文件。
祝你好运!
将我的 Mac 升级到 Catalina 后,我不能再使用 qemu。每当我尝试启动它时,它就会挂起。当 qemu window 处于活动状态时,菜单栏也没有响应。
运行 qemu-system-i386 --help
确实有效。
Qemu 版本:4.1.0
编辑:通过 -nographic
修复了问题。
这是 Catalina 行为变化的结果,它打破了 QEMU Cocoa 前端设计中的假设。我们对 QEMU 代码进行了更改(上游 git commit dff742ad27efa474)以避免挂起;这将出现在即将发布的 QEMU 4.2 版本中。同时,一种解决方法是避免使用 Cocoa 前端(例如,使用 -nographic 完全关闭图形,或使用其他显示前端之一,如 VNC 或 Spice)。
(Catalina 行为更改的技术细节是 NSApplicationDelegate::applicationDidFinishLaunching 记录在处理任何事件之前调用它 [https://developer.apple.com/documentation/appkit/nsapplicationdelegate/1428385-applicationdidfinishlaunching ],这在旧版本的 OSX,但在 Catalina 中,至少有一个事件在 applicationDidFinishLaunching 之前发送到应用程序,这在 QEMU 中触发了死锁。)
关于 OSX 行为变化的反馈报告显然已提交给 Apple,错误编号为 FB7380815。
获取 SDL
brew install sdl2
和 Qemu 源代码
git clone https://git.qemu.org/git/qemu.git
然后使用
配置./configure --target-list=i386-softmmu,x86_64-softmmu --enable-sdl --disable-cocoa --enable-sdl-image
然后
make & make install
这会部署使用 SDL 而不是 cocoa 的可用 qemu 二进制文件。 祝你好运!