+1 vote

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: monogetexceptionargument"

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

in Engine by (27 points)

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

I have the same issue

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 "$(LOCALLIBRARYDIR)/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: gdmonosetupaot"

From GoDot source code I see that gdmonosetup_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?

FYI - Xamarin iOS SDK can be downloaded from here: https://docs.microsoft.com/en-us/xamarin/ios/get-started/installation/

did you manage to resolve this aot error?

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.

2 Answers

+2 votes

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.

by (20 points)
0 votes

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

by (561 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.