Undefined symbols
Unity: All versions | Appodeal SDK: All versions
The error Undefined symbols for architecture arm64: "_OBJC_CLASS_$_SKAdImpression" during the iOS build usually happens if XCode or CocoaPods version is lower than required.
The error log example:
ld: warning: Could not find or use auto-linked framework 'SmaatoSDKUnifiedBidding' ld: warning: Could not find or use auto-linked framework 'AVFAudio' ld: warning: Could not find or use auto-linked framework 'AppodealMediationCoreObjC' Undefined symbols for architecture arm64: "_OBJC_CLASS_$_SKAdImpression", referenced from: objc-class-ref in AdColony(ADCAdSession.o) objc-class-ref in MyTargetSDK(MTRGCommonBannerParser.o) (maybe you meant: _OBJC_CLASS_$_SKAdImpressionProxy) ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
To fix it use the versions listed in the Minimum OS requirements section:
Minimum OS requirements:
Unity 2017.4 (Api Compatibility Level - Experimental (.NET 4.6 Equivalent) or 2018.3+
Android API level 16 (Android OS 4.1) and above.
iOS 10.0 or higher.
Use XCode 12.5 or higher.
- CocoaPods 1.10.0 or higher
To update CocoaPods to the latest version, open Terminal and perform the following command:
sudo gem install cocoapods