godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
91.16k stars 21.2k forks source link

3.2.alpha3 export to IOS fails in xcode with AR-related undefined symbol errors #33755

Closed cwbooth5 closed 4 years ago

cwbooth5 commented 4 years ago

Godot version: 3.2.alpha3.official

OS/device including version: OSX Catalina 10.15

Issue description: After grabbing export templates for 3.2.alpha3, an 'export project' works without error. Upon compilation within xcode 11.1 using iOS SDK v13.1, compilation fails with the following stack trace.

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_ARSession", referenced from:
      objc-class-ref in fugitive.a(arkit_interface.iphone.opt.debug.arm64.o)
  "_OBJC_CLASS_$_ARWorldTrackingConfiguration", referenced from:
      objc-class-ref in fugitive.a(arkit_interface.iphone.opt.debug.arm64.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I'm looking for both a mitigation and possibly a bug fix in the exported code, if we determine that is indeed a cause of this.

Steps to reproduce:

  1. Run v3.2.alpha3.official of godot.
  2. Export for IOS using the downloaded export templates.
  3. Open exported .xcodeproj in xcode 11.
  4. Build
  5. above error hit here
cwbooth5 commented 4 years ago

Note that I didn't select ARkit capabilities (or any others) when checking boxes in the export template.

bruvzg commented 4 years ago

33406 duplicate.