Ios export issue

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

Hey guys!

I’ve been reading a lot about how to export to iOS. First off, the documentation seems to be wrong. From my understanding you can now export the game inside the editor? But, when it’s exported (using the official templates, no issues, icon is there, name and ID also) I get the “project cannot be parsed.” message when I try to open the project in Xcode. This is really frustrating as I have no single clue as what to do about it and how to solve it. I’ve read about someone having similar issues on GitHub with the exporter for Godot 3. But I never figured out how they solved it.

Since this is my first question here I just want to say that I love the Godot engine!

Edit: So, looking at the output in my terminal (instead of the one in Godot) I get this:

exporting res://default_bus_layout.tres
exporting res://default_env.tres
exporting res://scenes/2Player.tscn
exporting res://scenes/DeathBakground.tscn
exporting res://scenes/Info screen.tscn
exporting res://scenes/PauseScreen.tscn
exporting res://scenes/Player 2.tscn
exporting res://scenes/Settings screen.tscn
exporting res://scenes/StartScreen.tscn
exporting res://scenes/UltimateBomb.tscn
exporting res://scenes/UltimateBombBox.tscn
exporting res://scenes/arcadeGame.tscn
exporting res://scenes/enemy.tscn
exporting res://scenes/invincibleBox.tscn
exporting res://scenes/player.tscn
exporting res://scenes/player1dies.tscn
exporting res://scenes/player2dies.tscn
exporting res://scenes/playerShootExplosion.tscn
exporting res://scenes/player_1_bullet.tscn
exporting res://scenes/player_2_bullet.tscn
exporting res://scenes/refillAmmo.tscn
exporting res://scenes/spawner_enemy.tscn
exporting res://scenes/speedUp.tscn
exporting res://scenes/targetBox.tscn
exporting res://scenes/uppgradeAmmo.tscn
static library: libgodot.iphone.debug.fat.a
Unzipping...
READ: data.pck
READ: godot_ios/
READ: godot_ios/Default-Portrait@2x.png
ADDING: Circlr/Default-Portrait@2x.png size: 33309
READ: godot_ios/Default-Landscape-1366h@2x.png
ADDING: Circlr/Default-Landscape-1366h@2x.png size: 32836
READ: godot_ios/dylibs/
READ: godot_ios/dylibs/empty
ADDING: Circlr/dylibs/empty size: 41
Creating /Users/Me/Desktop/Circlr1/Circlr/dylibs
READ: godot_ios/dummy.cpp
parse godot_ios/dummy.cpp
ADDING: Circlr/dummy.cpp size: 2
READ: godot_ios/Default-Portrait-1366h@2x.png
ADDING: Circlr/Default-Portrait-1366h@2x.png size: 33309
READ: godot_ios/export_options.plist
parse godot_ios/export_options.plist
ADDING: Circlr/export_options.plist size: 476
READ: godot_ios/Default-Landscape@2x.png
ADDING: Circlr/Default-Landscape@2x.png size: 3131
READ: godot_ios/godot_ios.entitlements
ADDING: Circlr/Circlr.entitlements size: 246
READ: godot_ios/Default-568h@2x.png
ADDING: Circlr/Default-568h@2x.png size: 564
READ: godot_ios/en.lproj/
READ: godot_ios/en.lproj/InfoPlist.strings
ADDING: Circlr/en.lproj/InfoPlist.strings size: 45
Creating /Users/tedwennerstrom/Desktop/Circlr1/Circlr/en.lproj
READ: godot_ios/Default-667h@2x.png
ADDING: Circlr/Default-667h@2x.png size: 817
READ: godot_ios/godot_ios-Info.plist
parse godot_ios/godot_ios-Info.plist
ADDING: Circlr/Circlr-Info.plist size: 1435
READ: godot_ios/Default-Portrait-736h@3x.png
ADDING: Circlr/Default-Portrait-736h@3x.png size: 1676
READ: godot_ios/Default-Landscape-736h@3x.png
ADDING: Circlr/Default-Landscape-736h@3x.png size: 2582
READ: godot_ios.xcodeproj/
READ: godot_ios.xcodeproj/xcshareddata/
READ: godot_ios.xcodeproj/xcshareddata/xcschemes/
READ: godot_ios.xcodeproj/xcshareddata/xcschemes/godot_ios.xcscheme
parse godot_ios.xcodeproj/xcshareddata/xcschemes/godot_ios.xcscheme
ADDING: Circlr.xcodeproj/xcshareddata/xcschemes/Circlr.xcscheme size: 3410
Creating /Users/Me/Desktop/Circlr1/Circlr.xcodeproj/xcshareddata/xcschemes
READ: godot_ios.xcodeproj/project.pbxproj
parse godot_ios.xcodeproj/project.pbxproj
ADDING: Circlr.xcodeproj/project.pbxproj size: 25138
READ: godot_ios.xcodeproj/project.xcworkspace/
READ: godot_ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata
parse godot_ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata
ADDING: Circlr.xcodeproj/project.xcworkspace/contents.xcworkspacedata size: 152
Creating /Users/Me/Desktop/Circlr1/Circlr.xcodeproj/project.xcworkspace
READ: libgodot.iphone.debug.fat.a
ADDING: Circlr.a size: 100994248
READ: libgodot.iphone.release.fat.a
Exporting additional assets
User defaults from command line:
    IDEArchivePathOverride = /Users/Me/Desktop/Circlr1/Circlr.xcarchive

Build settings from command line:
    SDKROOT = iphoneos11.2

2018-02-27 12:35:07.055 xcodebuild[97538:33658640] CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary on line 216. Parsing will be abandoned. Break on _CFPropertyListMissingSemicolon to debug.
2018-02-27 12:35:07.056 xcodebuild[97538:33658640] CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary on line 216. Parsing will be abandoned. Break on _CFPropertyListMissingSemicolon to debug.
2018-02-27 12:35:07.056 xcodebuild[97538:33658640] Error Domain=NSCocoaErrorDomain Code=3840 "Unexpected character / at line 1" UserInfo={NSDebugDescription=Unexpected character / at line 1, kCFPropertyListOldStyleParsingError=Error Domain=NSCocoaErrorDomain Code=3840 "Missing ';' on line 216" UserInfo={NSDebugDescription=Missing ';' on line 216}}
xcodebuild: error: Unable to read project 'Circlr.xcodeproj' from folder '/Users/tedwennerstrom/Desktop/Circlr1'.
	Reason: Project /Users/Me/Desktop/Circlr1/Circlr.xcodeproj cannot be opened because the project file cannot be parsed.


error: archive not found at path '/Users/Me/Dropbox/Circlr1/Circlr.xcarchive'
** EXPORT FAILED **

The last lines indicates that is might be something wrong with the export template? Or something in my game… I am honestly clueless as to what to do, so if anyone knows anything, let me know!

:bust_in_silhouette: Reply From: pgregory

I encountered some problems with iOS exporting early on with my project too. It turned out in my case they were related to missing or invalid settings in the export dialog. This many or may not be the case for you. However, finding out what is going wrong during export isn’t as easy as it might be because the log output during export isn’t immediately accessible. I overcame this by running Godot from the shell, then all log output is redirected to the shell, and you can look through to find out what, if any, iOS export parameters are not properly defined. Presuming Godot is in Applications…

/Applications/Godot.app/Contents/MacOS/Godot

…from the shell should get you running, then do an export and take a look at the output in the command shell to see if anything jumps out.

Thank you for your answer! I managed to start Godot from the terminal but I cannot seem to be able to get the output to print to the console.

Sorry if I’m missing something here but this is all that I get when I start the project, then no matter what I do it won’t write anything more/else. I’ve tried to search everywhere as to how to get it to print to the console but I haven’t found anything yet. This is all that I get:

0: /Applications/Godot.app/Contents/MacOS/Godot
Current path: /Applications/Godot.app/Contents/Resources
OpenGL ES 3.0 Renderer: AMD Radeon R9 M370X OpenGL Engine
GLES3: max ubo light: 409
GLES3: max ubo reflections: 455, ubo size: 144
ARVR: Registered interface: Native mobile
OPENING: /Users/Me/AnotherFolder/MyGame (::Users::Me::AnotherFolder:: MyGame
arguments
0: /Applications/Godot.app/Contents/MacOS/Godot
1: --path
2: /Users/Me/AnotherFolder/MyGame
3: --editor
Current path: /Applications/Godot.app/Contents/Resources
OpenGL ES 3.0 Renderer: AMD Radeon R9 M370X OpenGL Engine
GLES3: max ubo light: 409
GLES3: max ubo reflections: 455, ubo size: 144
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Process completed]

detted | 2018-02-27 10:19

I’ve tried, and I get the same as you up to the logout. Did you try to do an actual project export after running up the editor? Looks to me like you ran Godot, then closed it down straight away. You need to run Godot from the shell, load your project, and then export it as an iOS application, and monitor the log output.

pgregory | 2018-02-27 11:06

Ok, I updated to 3.0.1. Still the same issue, but what I noticed in the terminal when stepped back in my commands was a “; exit;” at the end when I opened the app. It wasn’t there before and I don’t know how or why it showed up now. But removing that solved that problem. Now I get the full output in my terminal. Thank you for your help! I’ll try to see what is wrong now.

detted | 2018-02-27 11:26

:bust_in_silhouette: Reply From: detted

So, thanks to ViktorEvil, it turns out I wasn’t using the correct Team ID. To find your team Id you can go into Keychain Access, locate you iPhone developer certificate, right click on the Certificate and select Get info. Then scroll down to Details section and Expand it if needed. There you can find User ID or Team ID.

I wanted to add that there are fields, other than Team ID, that if not correctly populated will get you to this same error. In my case, I had used a wild card in the bundle Id, com.xxxxx.*, and the results were a successful export that xcode couldn’t load (“… file cannot be parsed”)

jbibbo | 2018-05-30 16:23