Quite a few. An example:
/gamekit/src/GameCenterDelegate.mm
Line 9: In file included from upload/gamekit/src/GameCenterDelegate.mm:9:
In file included from /usr/local/extender-stage/platformsdk/MacOSX12.1.sdk/System/Library/Frameworks/GameKit.framework/Headers/GameKit.h:19:
In file included from /usr/local/extender-stage/platformsdk/MacOSX12.1.sdk/System/Library/Frameworks/GameController.framework/Headers/GameController.h:50:
property with ‘retain (or strong)’ attribute must be of object type
@property (nonatomic, strong) dispatch_queue_t handlerQueue API_AVAILABLE(macos(10.9), ios(7.0), tvos(7.0));
^
Line 433: non-aggregate type ‘dmScript::LuaHBuffer’ cannot be initialized with an initializer list
dmScript::LuaHBuffer luabuffer = { buffer, true };
^ ~~~~~~~~~~~~~~~~
britzl
May 20, 2025, 12:49pm
23
The LuaHBuffer has a new constructor and a new way of defining ownership. I write “new” but it’s actually a pretty old change which no one has bothered contributing a fix for. Until now!
Here’s my fork with the fix: GitHub - britzl/extension-gamekit: Apple GameKit native extension for Defold
And the PR to the upstream repo: Changed LuaHBuffer constructor by britzl · Pull Request #4 · animonger/extension-gamekit · GitHub
2 Likes
Thank you @britzl .
I replaced the line in the library with the correction.
Would you happen to know what this error means and or how to fix it:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_GKAchievement", referenced from:
in libGameKit_10.a[5](GetCommands.mm_3.o)
"_OBJC_CLASS_$_GKAchievementDescription", referenced from:
in libGameKit_10.a[5](GetCommands.mm_3.o)
"_OBJC_CLASS_$_GKDialogController", referenced from:
in libGameKit_10.a[2](GameCenterDelegate.mm_0.o)
"_OBJC_CLASS_$_GKGameCenterViewController", referenced from:
in libGameKit_10.a[11](ShowCommands.mm_9.o)
"_OBJC_CLASS_$_GKLeaderboard", referenced from:
in libGameKit_10.a[5](GetCommands.mm_3.o)
"_OBJC_CLASS_$_GKLeaderboardSet", referenced from:
in libGameKit_10.a[5](GetCommands.mm_3.o)
"_OBJC_CLASS_$_GKLocalPlayer", referenced from:
in libGameKit_10.a[4](GameKit.mm_2.o)
"_OBJC_CLASS_$_GKMatchRequest", referenced from:
in libGameKit_10.a[9](RealTimeCommands.mm_7.o)
"_OBJC_CLASS_$_GKMatchmakerViewController", referenced from:
in libGameKit_10.a[9](RealTimeCommands.mm_7.o)
"_OBJC_CLASS_$_GKPlayer", referenced from:
in libGameKit_10.a[9](RealTimeCommands.mm_7.o)
"_OBJC_CLASS_$_GKScore", referenced from:
in libGameKit_10.a[10](SendCommands.mm_8.o)
Wondering if there are any dependencies I may be missing. I am running this on an M2 Pro Macbook 16".
or
/gamekit/ext.manifest
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
com.defold.extender.ExtenderException: java.io.IOException: clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/GameCenterDelegate.mm -obuild/GameCenterDelegate.mm_0.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/GameKit.cpp -obuild/GameKit.cpp_1.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/GameKit.mm -obuild/GameKit.mm_2.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/GetCommands.mm -obuild/GetCommands.mm_3.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/ImageBitmap.mm -obuild/ImageBitmap.mm_4.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/LuaEvents.cpp -obuild/LuaEvents.cpp_5.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/LuaStackDump.cpp -obuild/LuaStackDump.cpp_6.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/RealTimeCommands.mm -obuild/RealTimeCommands.mm_7.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/SendCommands.mm -obuild/SendCommands.mm_8.o
clang++ -c -isystem /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk/usr/include/c++/v1 -DDLIB_LOG_DOMAIN="GAMEKIT" -DDDF_EXPOSE_DESCRIPTORS -DDM_PLATFORM_MACOS -DDM_PLATFORM_OSX -DGL_DO_NOT_WARN_IF_MULTI_GL_VERSION_HEADERS_INCLUDED -O2 -g -stdlib=libc++ -mmacosx-version-min=10.15 -isysroot /Users/bjorn/extender-production/platformsdk/MacOSX15.2.sdk -nostdinc++ -fno-exceptions -fvisibility=hidden -Werror=format -arch arm64 -target arm64-apple-darwin19 -m64 -Ibuild/gamekit/ -Iupload/ -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//sdk/include -I/Users/bjorn/extender-production/sdk/d8e6e73a8efac6b9a72783027867e547b6a363e4/defoldsdk//ext/include upload/gamekit/src/ShowCommands.mm -obuild/ShowCommands.mm_9.o
britzl
May 21, 2025, 5:14am
25
Ah, I only tested with an iOS build. I have updated my PR to support also arm64 macOS.
1 Like