为iOS平台编译
需求
SCons 3.0+ (you can install it via Homebrew or MacPorts, you should be able to run
scons
in a terminal when installed).Xcode 10.0(或更高版本)以及iOS(10.0)SDK和命令行工具.
参见
有关Godot的SCons用法的一般概述,请参阅 构建系统介绍.
开始编译
打开终端,转到引擎源代码的根目录并键入:
$ scons p=iphone target=debug
针对调试版本,或:
$ scons p=iphone target=release
对于发布版本(检查 platform/iphone/detect.py
以获取用于每种配置的编译器标志).
或者,您可以运行
$ scons p=iphone arch=x86_64 target=debug
用于模拟器可执行文件.
对于最新的设备,当您上载到苹果商店时,苹果要求64位版本的应用程序二进制文件.提供这些功能的最好方法是创建一个包,其中包含32位和64位二进制文件,这样每个设备都可以运行游戏.
可以分三步完成:首先编译32位版本,再编译64位版本,然后使用 lipo
命令将它们绑定到一个”通用(universal)”二进制文件中.所有这些步骤都可以通过以下命令执行:
$ 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
如果您还想提供一个模拟器构建(减少具有依赖项的任何链接器错误的机会),您还需要构建和 lipo
x86_64
体系结构.
$ 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
运行
要在设备或模拟器上运行,请按照以下说明操作: 为iOS导出.
将您的可执行文件替换或添加到Xcode项目,如果您使用替代版本,则相应地更改Info.plist上的 可执行文件名称
属性.