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
- Channel remapping dropdown in the Terrain Layer does not open when clicked on the title
- The Editor freezes indefinitely when a large number of elements are entered in the Subgraphs or Categories lists
- Some Visual Effects package Assets links to documentation are not working
- Heatmap asset’s documentation button in the Inspector window leads to “Sorry... that page seems to be missing!” page when clicked
- Crash on MonoBehaviour::CallMethodIfAvailable when performing various actions
Resolution Note (2022.1.X):
Pass frameworks into il2cpp via parameter.
Example:
--linker-flags="-framework AppKit"