[Unity VR报错解决]Unity.IL2CPP.Bee.BuildLogic.ToolchainNotFoundException: IL2CPP C++ code builder

前言

用Unity build一个VR项目的时候,即使已经安装了相关SDK和通用平台工具了但还是报以下错误:

Build completed with a result of 'Failed' in 8 seconds (8257 ms)
Internal build system error. BuildProgram exited with code 1.
Unity.IL2CPP.Bee.BuildLogic.ToolchainNotFoundException: IL2CPP C++ code builder is unable to build C++ code. In order to build C++ code for UWP, you must have one of these installed:
 * Visual Studio 2022 or newer with C++ compilers and Windows 10 (or newer) SDK (recommended)
 * Visual Studio 2019 with C++ compilers and Windows 10 (or newer) SDK
 * Visual Studio 2017 with C++ compilers and Windows 10 (or newer) SDK
 * Visual Studio 2015 with C++ compilers and Windows 10 (or newer) SDK

Visual Studio 2017 (or newer) is detected using `vswhere.exe` as well as VSCOMNTOOLS environment variables.
Visual Studio 2015 is detected by looking at "SOFTWARE\Microsoft\VisualStudio\14.0_Config\InstallDir" in the registry as well as VSCOMNTOOLS environment variables.
Windows 10 (or newer) SDK is detected by looking at "SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows\v10.0\InstallationFolder" in the registry.

Unable to detect any compatible Visual Studio installation!
 * Found Visual Studio 2022 installation without support for architecture arm64
 * Found Visual Studio 2019 installation without support for architecture arm64


   at Unity.IL2CPP.Bee.BuildLogic.UniversalWindows.UWPBuildLogic.UserAvailableToolchainFor(Architecture architecture)
   at UWPPlayerBuildProgram.UWPPlayerBuildProgram.<>c__DisplayClass67_0.<SetupCreateVisualStudioSolution>b__3()
   at Bee.Core.TinyProfiler2Base.Section[T](String label, Func`1 func, Dictionary`2 metadata)
   at UWPPlayerBuildProgram.UWPPlayerBuildProgram.SetupCreateVisualStudioSolution()
   at UWPPlayerBuildProgram.UWPPlayerBuildProgram.SetupPlayerBuild()
   at PlayerBuildProgramLibrary.PlayerBuildProgramBase.RunBuildProgram()
   at PlayerBuildProgramTypeWrapper.Run(String[] args)
   at Program.Main(String[] args)
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

解决方法

原因是因为自己没有安装IL2CPP的插件,故进入到Unity HUB里面:
在这里插入图片描述
点击设置按钮-添加模块:
在这里插入图片描述可以看到IL2CPP确实没有勾选,罪魁祸首终于找到了T T

勾选后等待安装即可,记得这时候要把visual studio退出来。

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Unity 中使用 Gradle 来编译 il2cpp,需要进行以下步骤: 1. 打开 Unity,选择 File -> Build Settings,在弹出的窗口中选择 Android 平台。 2. 在右侧的面板中,选择 Player Settings,进入 Android Player Settings 界面。 3. 在 Android Player Settings 界面中,找到 Publishing Settings,勾选 Custom Main Gradle Template。 4. 点击 Edit Main Gradle Template 按钮,打开 Gradle 模板文件。 5. 在模板文件中,找到 buildTypes 部分,添加以下代码: ``` release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' ndk { abiFilters "armeabi-v7a", "arm64-v8a" } externalNativeBuild { ndkBuild { path "src/main/cpp/Android.mk" } } } ``` 说明: - `minifyEnabled` 表示是否启用代码混淆,默认为 false。 - `proguardFiles` 表示混淆规则文件,默认为 Android SDK 中的 proguard-android.txt 文件。 - `ndk` 表示指定编译的 ABI 类型,这里指定了 armeabi-v7a 和 arm64-v8a 两种类型。 - `externalNativeBuild` 表示使用外部编译工具进行编译。 - `ndkBuild` 表示使用 ndk-build 工具进行编译。 - `path` 表示 ndk-build 工具的编译脚本文件路径。 6. 保存模板文件,返回 Android Player Settings 界面。 7. 在 Android Player Settings 界面中,找到 Publishing Settings,勾选 Custom Gradle Properties。 8. 在 Custom Gradle Properties 中添加以下代码: ``` android.useAndroidX=true android.enableJetifier=true ``` 说明: - `android.useAndroidX` 表示是否使用 AndroidX 库,默认为 true。 - `android.enableJetifier` 表示是否启用 Jetifier 工具,将旧版的 Support 库转换为 AndroidX 库,默认为 true。 9. 点击 Build 按钮,进行 il2cpp 编译。编译完成后,会生成生成 APK 文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bartender_Jill

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值