Windows: 11
builder: 3.83.1
ios: 26.0
pastebin: https://pastebin.com/0s9Y9tEm
After adding the Yandex Sdk for ads this error started happening.
Windows: 11
builder: 3.83.1
ios: 26.0
pastebin: https://pastebin.com/0s9Y9tEm
After adding the Yandex Sdk for ads this error started happening.
Hello first,
It looks like something should preprocess this source file before compilation, or that the Xcode level requirements for this version of the Yandex SDK are not met. What are they?
Hello, sorry I usually forget since I copy the post requirements and just fill them up!
If you mean the minimum Xcode requirement, the documentation says xcode 16.3
Since I'm using xcode 26's SDK I believe something should be preprocessed?
Thanks.
I found the possible source of the missing preprocessing step. Here:
You can see That AMA_BUILD_TYPE is defined to "source".
To replicate that behaviour you may try to add something like -DAMA_BUILD_TYPE=\"source\" (note the escaped quotes) in the extra compiler flags, or patch the source file yourself so that it returns "source" (the C string) at that line.
Hello,
I've tried adding it to the extra compiler but for some reason it didn't work.
Is it possible for me to send you the xcode project for you to test like in previous instances? Thanks a lot
I have taken on new responsibilities and I have less time than before, so I would prefer if we did this in last resort.
Have you tried simply patching the source file with the right value?
Yes I did, but a new problem appeared.
It's a very huge list of errors for some reason
I see the Yandex iOS SDK has binary releases. You should use that instead :
I'll try but I'm not sure if it'll work since I've attempted that before and what I use is Unity Levelplay and Add Yandex as one of the mediated networks.
Is that a problem with the version of yandex that level play uses? Maybe?
If you do that consistently, that is, by using the same precompiled version as the Unity end expects, and following the publisher's documentation about possible Info.plist changes (API keys, other settings), there's no reason it won't work. Precompiled packages are immune to compilation errors. The two pitfalls they have is 1. Linking error (sign that you're not using the same version as the one your code expects), and 2. Crashing app or features failing to initialize (sign that the setup was not properly done - in which case, follow to the letter the publisher's documentation).
Hello
I've attempted a few times, I believe the problem is that Yandex requires some other frameworks ( Appmetrica and DivKit) but seems like they chose to distribute them as raw code instead of pre-compiled binaries.
Even through I added the pre-compiled YandexIronsourceAdapter and YandexAds frameworks, it still requires the AppMetrica/DivKit, I've attempted building with cocoapods > pods are downloaded> I edit the podfile and manually add the Yandex/Ironsource Yandex adapter frameworks> try to build> Error again.
I see indeed that AppMetrica (another Yandex framework) is distributed in source form only: https://github.com/appmetrica/appmetrica-sdk-ios/releases
It would make sense to start up your Mac once again to build these frameworks for iOS (or ask a relative to do that if your Mac is too old for that). Once you have the .framework directories, move them to Windows and you can reuse them at will by injecting them in the Windows build. That would be the easy way to solve your problem.
The problem with your particular CocoaPods case seems to be a custom pre-processing step that involves shell scripts typically written in POSIX shell scripting language and assuming a complete macOS subsystem. Some Pods rely on that. To do a complete build on Windows would require to find these scripts and rewrite them in a language Windows understands (e.g. Batch, PowerShell) - and also call tools that are available on Windows.
Moderators: Pierre-Marie Baty