Kompilieren für iOS

Voraussetzungen

  • SCons 3.0+ (Sie können es über Homebrew oder Macports installieren. Bei der Installation sollten Sie in der Lage sein, scons in einem Terminal auszuführen).
  • Xcode 10.0 (oder höher) mit dem iOS (10.0) SDK und den Befehlszeilentools.

Siehe auch

Eine allgemeine Übersicht über die Verwendung von SCons für Godot finden Sie unter Einführung in das Buildsystem.

Kompilieren

Öffnen Sie ein Terminal, wechseln Sie in das Stammverzeichnis des Engine-Quellcodes und geben Sie Folgendes ein:

$ scons p=iphone target=debug

for a debug build, or:

$ scons p=iphone target=release

for a release build (check platform/iphone/detect.py for the compiler flags used for each configuration).

Alternatively, you can run

$ scons p=iphone arch=x86_64 target=debug

for a Simulator executable.

For recent devices, Apple requires 64-bit versions of application binaries when you are uploading to the Apple Store. The best way to provide these is to create a bundle in which there are both 32-bit and 64-bit binaries, so every device will be able to run the game.

It can be done in three steps: first compile the 32-bit version, then compile the 64-bit version and then use lipo to bundle them into one "universal" binary. All those steps can be performed with following commands:

$ scons p=iphone tools=no target=release arch=arm
$ scons p=iphone tools=no target=release arch=arm64
$ lipo -create bin/libgodot.iphone.opt.arm.a bin/libgodot.iphone.opt.arm64.a -output bin/libgodot.iphone.release.fat.a
$ lipo -create bin/libgodot_camera_module.iphone.opt.arm.a bin/libgodot_camera_module.iphone.opt.arm64.a -output bin/libgodot_camera_module.iphone.release.fat.a
$ lipo -create bin/libgodot_arkit_module.iphone.opt.arm.a bin/libgodot_arkit_module.iphone.opt.arm64.a -output bin/libgodot_arkit_module.iphone.release.fat.a

If you also want to provide a simulator build (reduces the chance of any linker errors with dependencies), you'll need to build and lipo the x86_64 architecture as well.

$ scons p=iphone tools=no target=release arch=arm
$ scons p=iphone tools=no target=release arch=arm64
$ scons p=iphone tools=no target=release arch=x86_64
$ lipo -create bin/libgodot.iphone.opt.arm.a bin/libgodot.iphone.opt.arm64.a bin/libgodot.iphone.opt.x86_64.a -output bin/libgodot.iphone.release.fat.a
$ lipo -create bin/libgodot_camera_module.iphone.opt.arm.a bin/libgodot_camera_module.iphone.opt.arm64.a bin/libgodot_camera_module.iphone.opt.x86_64.a -output bin/libgodot_camera_module.iphone.release.fat.a
$ lipo -create bin/libgodot_arkit_module.iphone.opt.arm.a bin/libgodot_arkit_module.iphone.opt.arm64.a bin/libgodot_arkit_module.iphone.opt.x86_64.a -output bin/libgodot_arkit_module.iphone.release.fat.a

Ausführen

To run on a device or simulator, follow these instructions: Exportieren für iOS.

Replace or add your executable to the Xcode project, and change the "executable name" property on Info.plist accordingly if you use an alternative build.