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

MacOS

-

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

  1. Resolution Note (2022.1.X):

    Pass frameworks into il2cpp via parameter.
    Example:
    --linker-flags="-framework AppKit"

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.