内容简介:-- Alan Turing, 1936UTM is a full featured virtual machine host for iOS. In short, it allows you to run Windows, Android, and more on your iPhone and iPad.
UTM
It is possible to invent a single machine which can be used to compute any computable sequence.
-- Alan Turing, 1936
UTM is a full featured virtual machine host for iOS. In short, it allows you to run Windows, Android, and more on your iPhone and iPad.
Features
- 30+ processors supported including x86_64, ARM64, and RISC-V thanks to qemu as a backend
- Fast native graphics through para-virtualization thanks to SPICE
- JIT based acceleration using qemu TCG
- Frontend designed from scratch for iOS11+ using the latest and greatest APIs
- Create, manage, run VMs directly from your device
- No jailbreak required!
Building
Make sure you have cloned with submodules git submodule update --init --recursive .
Easy
The recommended way to obtain the dependencies is to use the built artifacts from Github Actions . Look for the latest build and download the Sysroot artifact from either the arm64 build (for iOS) or x86_64 build (for iOS Simulator). Then unzip the artifact to the root directory of UTM. You can then open UTM.xcodeproj , select your signing certificate, and then run UTM from Xcode.
Advanced
If you want to build the dependencies yourself, it is highly recommended that you start with a fresh macOS VM. This is because some of the dependencies attempt to use /usr/local/lib even though the architecture does not match. Certain installed libraries like libusb and gawk will break the build.
- Install Xcode command line and the following build prerequisites
brew install bison pkg-config gettext glib libgpg-error nasmMake sure to addbisonto your$PATHenvironment! -
git submodule update --init --recursiveif you haven't already - Run
./scripts/build_dependencies.shto start the build. If building for the simulator, run./scripts/build_dependencies.sh -a x86_64instead. - Open
UTM.xcodeprojand select your signing certificate - Build and deploy from Xcode
Running on iOS 13.3.1+
Since iOS 13.3.1, it appears Apple has stopped allowing free developer profiles to sign dylibs . As a workaround, you can either spend $99/year on an Apple developer program or < $10/year on some third party iOS signing certificate (you can search for it online, do not ask for help with this).
Signing Release
If you want to sign an ipa from the release page , there are a variety of ways. You can search online for information on sideloading IPA. One thing to note is if you are given the choice between signing for "development" or "distribution", you must chose "development". More specifically, you need the get-task-allow entitlement. Most signing services and tools already do this.
Signing Development Build
If you want to sign an xcarchive such as from a Github Actions built artifact, you can use the following command:
./scripts/resign.sh UTM.xcarchive PROFILE_NAME TEAM_ID outputPath
Where PROFILE_NAME is the name of the provision profile and TEAM_ID is the identifier next to the team name in the provision profile. Make sure the signing key is imported into your keychain and the provision profile is installed on your iOS device.
Why isn't this in the AppStore?
Apple does not permit any apps that has interpreted or generated code therefore it is unlikely that UTM will ever be allowed. However, there are various ways people on the internet have come up to side load apps without requiring a jailbreak. We do not condone or support any of these methods.
License
UTM is distributed under the permissive Apache 2.0 license. However, it uses several (L)GPL components. Most are dynamically linked but the gstreamer plugins are statically linked and parts of the code are taken from qemu. Please be aware of this if you intend on redistributing this application.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Kubernetes权威指南
龚正、吴治辉、王伟、崔秀龙、闫健勇、崔晓宁、刘晓红 / 电子工业出版社 / 2016-10 / 99
Kubernetes是由谷歌开源的Docker容器集群管理系统,为容器化的应用提供了资源调度、部署运行、服务发现、扩容及缩容等一整套功能。《Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版)》从一个开发者的角度去理解、分析和解决问题,囊括了Kubernetes入门、核心原理、实践指南、开发指导、高级案例、运维指南及源码分析等方面的内容,图文并茂、内容丰富、由浅入......一起来看看 《Kubernetes权威指南》 这本书的介绍吧!