Skip to content

iOS plugin built for Godot 4.4.1 - Build failed on Xcode #85

@ManuelMacchia

Description

@ManuelMacchia

Godot 4.4.1
Mac OS Sequoia 15.5
XCode 16.2

% clang --version
Apple clang version 16.0.0 (clang-1600.0.26.6)
Target: arm64-apple-darwin24.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

I've apparently compiled, in a proper way, the iOS plugin for Game Center and iCloud following the steps on the main README file. I've enable the plugins on the export panel for the iOS platform, but once I opened xCode and try to build the app, it failed due to the following errors:

Undefined symbol: D_METHODP(char const*, char const* const**, unsigned int)
Undefined symbol: ClassDB::bind_methodfi(unsigned int, MethodBind*, bool, MethodDefinition const&, Variant const**, int)
The result is the same if I try to enable one plugin per time.
I tried to re-compile everything multiple times. Here the steps in details (for the GameCenter plugin but I see the same results with other plugins, like iCloud):

  1. Clone the repo and its submodule
    git clone --recursive https://github.com/godotengine/godot-ios-plugins.git

  2. update the godot repo to the version 4.4
    cd godot git fetch git checkout origin/4.4

  3. Generate Godot headers
    scons platform=ios target=editor

  4. From the main directory godot-ios-plugins - Building a .xcframework library

scons target=release_debug arch=arm64 simulator=yes plugin=gamecenter version=4.0
./scripts/generate_xcframework.sh gamecenter release_debug 4.0

Then I copied the files godot-ios-plugins/plugins/gamecenter/gamecenter.gdip and godot-ios-plugins/bin/gamecenter.release_debug.xcframework into the folder, on my Godot project, /res/ios/plugins. Then renamed gamecenter.release_debug.xcframework to gamecenter.xcframework

Any suggestion?
Thanks

P.S: this step (https://github.com/godot-sdk-integrations/godot-ios-plugins?tab=readme-ov-file#building-a-a-library) on the doc cannot work, the script generate_static_library.sh is not available on the script folder of the plugin

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions