godotengine / godot-cpp

C++ bindings for the Godot script API
MIT License
1.7k stars 525 forks source link

iOS app fails to validate due to unexpected file #1532

Open 2shady4u opened 2 months ago

2shady4u commented 2 months ago

Godot version

4.2.2

godot-cpp version

d6e5286cc19bbd5b2c626207d3b01a8f145c0f76

System information

MacOS Sonoma 14.5 on MacbookPro M1

Issue description

One of my users reports being unable to validate an export iOS app using a gdextension plugin for iOS on his MacOS machine.

Following errors are found:

Asset validation failed
Unexpected file found in Frameworks. The “sqliteapp.app/Frameworks/libgodot-cpp.ios.template_debug.arm64.a, sqliteapp.app/Frameworks/libgdsqlite.ios.template_release.a” file is in the Frameworks directory, but the Swift runtime libraries are the only files permitted in that directory. Please remove this file and upload a new build. (ID: c6fa5985-b911-4b71-9d03-b29c4f5dc74a)

Asset validation failed
Invalid bundle structure. The “sqliteapp.app/Frameworks/libgodot-cpp.ios.template_debug.arm64.a” binary file is not permitted. Your app cannot contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. For details, visit: https://developer.apple.com/documentation/bundleresources/placing_content_in_a_bundle (ID: e2137553-807b-4661-a432-3720a4662110)

Asset validation failed
Invalid bundle structure. The “sqliteapp.app/Frameworks/libgdsqlite.ios.template_release.a” binary file is not permitted. Your app cannot contain standalone executables or libraries, other than a valid CFBundleExecutable of supported bundles. For details, visit: https://developer.apple.com/documentation/bundleresources/placing_content_in_a_bundle (ID: 02c54643-e379-4645-b0d4-48239ad8bff0)

Steps to reproduce

1.- Create new app in Godot 4.2.2 and make an empty scene for testing. 2.- Install godot-sqlite plugin from the AssetLib and activate. 3.- Download the artifacts containing the updated iOS xcframeworks as found here and place them in the res://addons/godot-sqlite/-folder. 3.- Export the app with IOS preset just filling App Store Team ID and Bundle Indentifier. 4.- Uncheck "Export with debug" 5.- Open the exported projects in Xcode and exec "Product -> Archive" 6.- When finish, press "Validate App" in the archives section.

Minimal reproduction project

Just a new Godot 4.2.2 Project.