kloder-games / godot-admob

Module Admob for Godot engine
MIT License
362 stars 62 forks source link

(iOS) Could not find or use auto-linked framework 'UniformTypeIdentifiers' #157

Closed apdisant closed 3 years ago

apdisant commented 3 years ago

OS target (iOS):

Godot version 3.2.3:

Issue description: When building for debug I get the following errors:

ld: warning: Could not find or use auto-linked framework 'UniformTypeIdentifiers' ld: warning: Could not find or use auto-linked framework 'FBLPromises' Undefined symbols for architecture arm64: "___darwin_check_fd_set_overflow", referenced from: _connecthostport in initialExport.a(connecthostport.iphone.debug.arm64.o) ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

I have retried many times from the beginning in both debug mode and release mode along with setting "Build Active Architecture Only". I have also tried compiling my own .a files and using precompiled files.

I am attempting to run on a real Iphone not a simulator.

Any help would be appreciated.

gumaciel commented 3 years ago

Sorry for delay, try to run these 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/release/libgodot.iphone.release.fat.a

If you still are facing with problems, try to check out this new module: https://github.com/Poing-Studios/Godot-AdMob-Android-iOS

He already have compiled files, so you dont need to compile by yourself: https://github.com/Poing-Studios/Godot-AdMob-Android-iOS/releases/tag/iOS_v3.0%2B

gumaciel commented 3 years ago

hey @apdisant , probably you will need to add a Library Called "UniformTypeIdentifiers", try to do that

apdisant commented 3 years ago

I have determined that the issue was that I was using an old version of Xcode (11.3.1). By updating to 12.3, the latest version at the time of writing this, I was able to build and run on real hardware with test ads. Unfortunately neither of the fixes mentioned above were successful and the only real fix was to update.

For those of you using much older hardware like me it is possible to update to a newer version of Mac OS that can run the latest version of xcode by searching for "mac os patcher tool" and choosing the most recent version of Mac OS that your hardware supports. It is unfortunate that apple stops updating their old software versions when a new one comes out.

Thanks for the support gustavottc!