Search Issue Tracker
By Design
Votes
1
Found in
2020.3
2020.3.1f1
2021.1
Issue ID
1325183
Regression
No
[IL2CPP][Xcode] Undefined symbol errors produced when compiling GameAssembly in an Xcode project with Native Plugins
Steps to reproduce:
1. Open the attached project ("1325183.zip")
2. Check "Create Xcode Project" option in Build Settings
3. Build and launch the Xcode project
4. in Xcode go to File -> Project Settings
5. Change Build System to "New Build System" and press Done
6. Run the project so it would compile
--or--
6. Go to Product -> Archive
Expected results: Build succeeds
Actual results: Build fails, Undefined symbols errors are produced (clang: error: linker command failed with exit code 1)
Reproducible with: 2020.3.4f1, 2021.1.3f1
Cannot properly test with:
- 2019.4.24f1 (build succeeds, Undefined symbols errors are produced as well as "Command PhaseScriptExecution emitted errors but did not return a nonzero exit code to indicate failure" error)
- 2021.2.0a13 (In this version it just doesn't find the header file of the plugin and produces "Command PhaseScriptExecution failed with a nonzero exit code" error)
Notes:
- Missing symbols errors are related to the Native Plugins that can be found [BuildOutputFolder]/Il2CppOutputProject/Source/CppPlugins/
- No issues with Mono following the same steps
- Reproduces with Intel 64-bit, Intel 64-bit + Apple Sillicon (did not test Apple Sillicon) Architectures selected in Build Settings
- Tested with Xcode 12.3
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Rigidbody2D.Slide API does not have the needed configuration when creating a 2D Top-Down character controller
- Opening reference for "Playables"component redirects to a missing page
- Sprite Renderer image is changed when switching Mask Interaction and changing Sprite to a shared Sprite
- An unsigned integer is not compared with an integer correctly in player when using IL2CPP backend
- Graphical artifacts are being rendered in Scenes that are loaded during run-time when GPU Resident Drawer is turned on
Resolution Note (2022.1.X):
Pass frameworks into il2cpp via parameter.
Example:
--linker-flags="-framework AppKit"