Bounty: 50
Using Unity 2017.4.34f1 (LTS) with IL2CPP with NDK r13b, I try to export my Unity Project to Android Project (Build Process).
Note: I’m using IL2CPP because Google PlayStore want both 32 & 64bit, so i cant use Mono anymore as scripting backend.
However, it’s failed and I got below error:
Exception: C:Program FilesUnityHubEditor2017.4.34f1EditorDatail2cpp/build/il2cpp.exe did not run properly!
UnityEditorInternal.Runner.RunProgram (UnityEditor.Utils.Program p, System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:130)
UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action`1 setupStartInfo) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:73)
UnityEditorInternal.IL2CPPBuilder.RunIl2CppWithArguments (System.Collections.Generic.List`1 arguments, System.Action`1 setupStartInfo, System.String workingDirectory) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:336)
UnityEditorInternal.IL2CPPBuilder.ConvertPlayerDlltoCpp (ICollection`1 userAssemblies, System.String outputDirectory, System.String workingDirectory) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:317)
UnityEditorInternal.IL2CPPBuilder.Run () (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:160)
UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String tempFolder, System.String stagingAreaData, IIl2CppPlatformProvider platformProvider, System.Action`1 modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry, Boolean debugBuild) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:34)
UnityEditor.Android.PostProcessor.Tasks.RunIl2Cpp.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report)
UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (BuildPostProcessArgs args)
UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTargetGroup targetGroup, BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:272)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
and one more error log:
Failed running C:Program FilesUnityHubEditor2017.4.34f1EditorDatail2cpp/build/il2cpp.exe --convert-to-cpp --emit-null-checks --enable-array-bounds-check --development-mode --compile-cpp --libil2cpp-static --platform="Android" --architecture="ARMv7" --configuration="Release" --outputpath="C:UserszukinaruDesktoporisnowyndoTemp/StagingAreaassetsbinDataNativearmeabi-v7alibil2cpp.so" --cachedirectory="C:UserszukinaruDesktoporisnowyndoAssets..Libraryil2cpp_android_armeabi-v7a/il2cpp_cache" --additional-include-directories="C:Program FilesUnityHubEditor2017.4.34f1EditorDataPlaybackEnginesAndroidPlayer/Toolsbdwgc/include" --additional-include-directories="C:Program FilesUnityHubEditor2017.4.34f1EditorDataPlaybackEnginesAndroidPlayer/Toolslibil2cpp/include" --tool-chain-path="C:/android-ndk-r13b-windows-x86_64/android-ndk-r13b" --map-file-parser="C:Program FilesUnityHubEditor2017.4.34f1EditorDataToolsMapFileParserMapFileParser.exe" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedAssembly-CSharp-firstpass.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedAssembly-CSharp.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedUnityEngine.UI.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedDOTween.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedFacebook.Unity.Settings.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedPlayMaker.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedTextMeshPro-1.0.55.2017.1.0b12.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedUnityEngine.Analytics.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedUnityEngine.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedFacebook.Unity.Android.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedFacebook.Unity.Canvas.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedFacebook.Unity.IOS.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedmscorlib.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedStores.dll" --assembly="C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataManagedUnityEngine.Purchasing.dll" --generatedcppdir="C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput"
stdout:
Building libil2cpp.so with AndroidToolChain.
Output directory: C:UserszukinaruDesktoporisnowyndoTempStagingAreaassetsbinDataNativearmeabi-v7a
Cache directory: C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache
ObjectFiles: 691 of which compiled: 282
Time Compile: 54396 milliseconds Il2CppAttributes.cpp
Time Compile: 23198 milliseconds Bulk_TextMeshPro-1.0.55.2017.1.0b12_0.cpp
Time Compile: 21138 milliseconds Il2CppInvokerTable.cpp
Time Compile: 20951 milliseconds Bulk_mscorlib_16.cpp
Time Compile: 16387 milliseconds Bulk_Assembly-CSharp_19.cpp
Time Compile: 15667 milliseconds Bulk_mscorlib_17.cpp
Time Compile: 13478 milliseconds GenericMethods24.cpp
Time Compile: 13394 milliseconds Il2CppMetadataUsage.cpp
Time Compile: 13278 milliseconds Bulk_Mad2D_0.cpp
Time Compile: 12015 milliseconds Bulk_mscorlib_10.cpp
Total compilation time: 765251 milliseconds.
il2cpp.exe didn't catch exception: Unity.IL2CPP.Building.BuilderFailedException: C:android-ndk-r13b-windows-x86_64android-ndk-r13btoolchainsllvmprebuiltwindows-x86_64binclang++ @"C:UserszukinaruAppDataLocalTemptmp56A5.tmp" -o "C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cachelinkresult_6D290C36A270BA4A86083617583BFE15libil2cpp.so" -shared -Wl,-soname,libil2cpp.so -Wl,--no-undefined -Wl,-z,noexecstack -Wl,--gc-sections -Wl,--build-id --sysroot "C:android-ndk-r13b-windows-x86_64android-ndk-r13bplatformsandroid-16arch-arm" -gcc-toolchain "C:android-ndk-r13b-windows-x86_64android-ndk-r13btoolchainsarm-linux-androideabi-4.9prebuiltwindows-x86_64" -target armv7-none-linux-androideabi -Wl,--wrap,sigaction -L "C:android-ndk-r13b-windows-x86_64android-ndk-r13bsourcescxx-stlgnu-libstdc++4.9libsarmeabi-v7a" -lgnustl_static -llog -Xlinker -Map="C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cachelinkresult_6D290C36A270BA4A86083617583BFE15libil2cpp.map" -rdynamic -fPIE -pie -fuse-ld=bfd.exe
clang++.exe: warning: argument unused during compilation: '-pie'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_init_m2214171880':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:543: undefined reference to `init'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_logout_m2238411584':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:571: undefined reference to `logout'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:571: undefined reference to `logout'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_activateApp_m160690348':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:581: undefined reference to `activateApp'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:581: undefined reference to `activateApp'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_logPurchase_m2329488507':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:605: undefined reference to `logPurchase'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_ui_m1731210125':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:635: undefined reference to `ui'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_initScreenPosition_m891649343':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:657: undefined reference to `initScreenPosition'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:657: undefined reference to `initScreenPosition'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
at Unity.IL2CPP.Building.CppProgramBuilder.PostprocessObjectFiles(IEnumerable`1 objectFiles, CppToolChainContext toolChainContext)
at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics)
at il2cpp.Program.DoRun(String[] args)
at il2cpp.Program.Run(String[] args)
at il2cpp.Program.Main(String[] args)
stderr:
Unhandled Exception: Unity.IL2CPP.Building.BuilderFailedException: C:android-ndk-r13b-windows-x86_64android-ndk-r13btoolchainsllvmprebuiltwindows-x86_64binclang++ @"C:UserszukinaruAppDataLocalTemptmp56A5.tmp" -o "C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cachelinkresult_6D290C36A270BA4A86083617583BFE15libil2cpp.so" -shared -Wl,-soname,libil2cpp.so -Wl,--no-undefined -Wl,-z,noexecstack -Wl,--gc-sections -Wl,--build-id --sysroot "C:android-ndk-r13b-windows-x86_64android-ndk-r13bplatformsandroid-16arch-arm" -gcc-toolchain "C:android-ndk-r13b-windows-x86_64android-ndk-r13btoolchainsarm-linux-androideabi-4.9prebuiltwindows-x86_64" -target armv7-none-linux-androideabi -Wl,--wrap,sigaction -L "C:android-ndk-r13b-windows-x86_64android-ndk-r13bsourcescxx-stlgnu-libstdc++4.9libsarmeabi-v7a" -lgnustl_static -llog -Xlinker -Map="C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cachelinkresult_6D290C36A270BA4A86083617583BFE15libil2cpp.map" -rdynamic -fPIE -pie -fuse-ld=bfd.exe
clang++.exe: warning: argument unused during compilation: '-pie'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_init_m2214171880':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:543: undefined reference to `init'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_logout_m2238411584':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:571: undefined reference to `logout'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:571: undefined reference to `logout'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_activateApp_m160690348':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:581: undefined reference to `activateApp'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:581: undefined reference to `activateApp'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_logPurchase_m2329488507':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:605: undefined reference to `logPurchase'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_ui_m1731210125':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:635: undefined reference to `ui'
C:UserszukinaruDesktoporisnowyndoLibraryil2cpp_android_armeabi-v7ail2cpp_cache43B0E2C486C7D35B13D99EAC9094B83F.o: In function `CanvasJSWrapper_initScreenPosition_m891649343':
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:657: undefined reference to `initScreenPosition'
C:UserszukinaruDesktoporisnowyndoTempStagingAreaIl2Cppil2cppOutput/Bulk_Facebook.Unity.Canvas_0.cpp:657: undefined reference to `initScreenPosition'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
at Unity.IL2CPP.Building.CppProgramBuilder.PostprocessObjectFiles(IEnumerable`1 objectFiles, CppToolChainContext toolChainContext)
at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics)
at Unity.IL2CPP.Building.Statistics.BuildingTestRunnerHelper.BuildAndLogStatsForTestRunner(CppProgramBuilder builder, IBuildStatistics& statistics)
at il2cpp.Program.DoRun(String[] args)
at il2cpp.Program.Run(String[] args)
at il2cpp.Program.Main(String[] args)
UnityEngine.Debug:LogError(Object)
UnityEditorInternal.Runner:RunProgram(Program, String, String, String, CompilerOutputParserBase) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:128)
UnityEditorInternal.Runner:RunManagedProgram(String, String, String, CompilerOutputParserBase, Action`1) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:73)
UnityEditorInternal.IL2CPPBuilder:RunIl2CppWithArguments(List`1, Action`1, String) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:336)
UnityEditorInternal.IL2CPPBuilder:ConvertPlayerDlltoCpp(ICollection`1, String, String) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:317)
UnityEditorInternal.IL2CPPBuilder:Run() (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:160)
UnityEditorInternal.IL2CPPUtils:RunIl2Cpp(String, String, IIl2CppPlatformProvider, Action`1, RuntimeClassRegistry, Boolean) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:34)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
What I’ve Done so far:
1) Try to use NDK r16b, but failed because Unity 2017.4 only want NDK r13b
2) Run Unity as Administrator, but still not solve
==UPDATE LOG (Unity 2017.4.39):
Exception: C:Program FilesUnityHubEditor2017.4.39f1EditorDatail2cpp/build/il2cpp.exe did not run properly!
UnityEditorInternal.Runner.RunProgram (UnityEditor.Utils.Program p, System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:130)
UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action`1 setupStartInfo) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:73)
UnityEditorInternal.IL2CPPBuilder.RunIl2CppWithArguments (System.Collections.Generic.List`1 arguments, System.Action`1 setupStartInfo, System.String workingDirectory) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:336)
UnityEditorInternal.IL2CPPBuilder.ConvertPlayerDlltoCpp (ICollection`1 userAssemblies, System.String outputDirectory, System.String workingDirectory) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:317)
UnityEditorInternal.IL2CPPBuilder.Run () (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:160)
UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String tempFolder, System.String stagingAreaData, IIl2CppPlatformProvider platformProvider, System.Action`1 modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry, Boolean debugBuild) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:34)
UnityEditor.Android.PostProcessor.Tasks.RunIl2Cpp.Execute (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTasks (UnityEditor.Android.PostProcessor.PostProcessorContext context)
UnityEditor.Android.PostProcessAndroidPlayer.PostProcess (BuildTarget target, System.String stagingAreaData, System.String stagingArea, System.String playerPackage, System.String installPath, System.String companyName, System.String productName, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report)
UnityEditor.Android.AndroidBuildPostprocessor.PostProcess (BuildPostProcessArgs args)
UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTargetGroup targetGroup, BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:272)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
===UPDATE (Unity 2017.4.8f1)
Has Tried with Unity 2017.4.8f1 (The Original where i was succesfull build APK) but still failed to export to Android Studio Project
with x64 (IL2CPP), I’m planning to build AppBundle x64 using exported Android Native/Android Studio.
If using internal (32bit) it was succesfull, but Google now need x64 APK/AppBundle Build. If i knew this before, i would using IL2CPP
from beginning (not internal), it’s so frustating error to solve. If i’m doing migration to Unity 2019
now, too much effort to do…
Get this bounty!!!