最近有个在 iOS 平台直接跑虚拟机的项目很火,传送门UTM
我正好手头有个越狱的 iPhone,在想着要不要弄成像在主机上直接 run 的效果,UTM app 的话是把 qemu 编译成了动态库加载到 iOS app 进程里,看了下作者 fork 的 qemu 源码的改动,我参考了一下,交叉编译了理论上可以在 jailbroken idevices 上跑的可执行程序,当然还需要链接一些其他的库,比如 libpixman 、libusb 等,我编译了这些库然后最终编成功了,安装到了 iPhone 的 file system 中,尝试过运行诸如 qemu-system-* 各种平台的模拟,但是一直提示签名问题(当然已签名),但是在 lldb debug 模式下可以跑。 其他的非模拟二进制文件可以正常运行没问题( qemu-io,qemu-img,qemu-ga 等)。
附上跑的截图,有兴趣的可以一起玩玩
我把二进制文件都放在了这里
https://github.com/k0Iry/qemu-ios-jailbroken
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.