Cannot build XCode project after exporting for iOS

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By Tadej

Hi!

I’m using Godot 3.2.2 with mono on my MacBook and everything runs fine, until I export the project for iOS, which completes successfully.

Then, when using XCode to build the export, it compiles without issues, but then I get linking errors like this (more than 100 and all mono related):

“Undefined symbol: _mono_get_exception_argument”

Seems like it cannot find reference to mono, which I have installed.

Does someone know, what am I missing?

PS: If I’m using the GoDot 3.2.2 version without mono on another project, everything completes ok and I’m able to run the application on my iPhone.

Tadej

i have the same error, searched a lot but cant figure out how to fix it :frowning:

zedaexa | 2020-08-24 19:49

I have the same issue

kovkev | 2020-08-29 17:12

I managed to resolve the above issue - when GoDot exports solution for iOS, it does not export mono libraries for iOS (which is logical).

You have to manually install Xamarin iOS SDK (this is mono version for iOS) and manually link iOS mono libraries to the exported solution in XCode - go to Project settings->Build Phases and you have to manually add “$(LOCAL_LIBRARY_DIR)/Frameworks/Xamarin.iOS.framework/Versions/13.20.2.2/SDKs/MonoTouch.iphoneos.sdk/usr/lib/libmonosgen-2.0.dylib” in “Link Binary With Binaries”.

After doing this, unresolved mono issues are gone.

However, I have the following issue now:

“Unresolved symbol: _gd_mono_setup_aot”

From GoDot source code I see that gd_mono_setup_aot() is automatically generated by GoDot export, when exporting for iOS - what am I missing? Is there some additional option which needs to be set in GoDot prior export?

Tadej | 2020-09-03 09:32

FYI - Xamarin iOS SDK can be downloaded from here: Xamarin.iOS Installation - Xamarin | Microsoft Learn

Tadej | 2020-09-03 09:34

did you manage to resolve this aot error?

iamfadex | 2020-10-22 19:32

I did not experience this issue anymore when upgrading GoDot from 3.2.2 to 3.2.3.

The problem was that GoDot export template in 3.2.2 did not export iOS mono libraries, while 3.2.3 exports them and the above errors dissapear.

Tadej | 2021-01-01 21:14

:bust_in_silhouette: Reply From: o.fawzi

Have been through same error and find out if you attach an empty c# script to a scene and export an iOS version, it will resolve all of the 100 error … and project will build successfully.

:bust_in_silhouette: Reply From: scrubswithnosleeves

For future readers, I believe the issue is that you cannot have any special characters in the Godot export settings.

Here is a video tutorial on exporting for iOS in its entirety: https://www.youtube.com/watch?v=BovBnO07h80