Skip to content

Help building for Android ( arm64-v8a ) #32

@nukadelic

Description

@nukadelic

Wasn't sure how to use the shell scripts so i tried using cmake-gui -downloaded and added ninja to path , selected the following toolchain : D:\UnityHubEditors\2021.3.27f1\Editor\Data\PlaybackEngines\AndroidPlayer\NDK\build\cmake\android.toolchain.cmake
used the following config :

CMAKE_ANDROID_ARCH_ABI=arm64-v8a
ANDROID_PLATFORM=30
CMAKE_ANDROID_API=30
CMAKE_ANDROID_ARM_MODE=ON

source code location : D:/GitClone/ImGui.NET-nativebuild/cimgui - generated and build .so file with ninja, renamed it to add a lib prefix and dropped into Assets\Plugins\Android\libcimgui.so with platform cpu target set to arm64 , and in project player settings android 11 ( api level 30 ) , IL2CPP backend and ARM64 target architecture , build the apk and made sure the .so file was included by opening it as an archive with 7zip ( it was located alongside all the other .so in \lib\arm64-v8a\libcimgui.so ).
But it looks like it fails to load the library

AndroidPlayer "Oculus_Quest" DllNotFoundException: Unable to load DLL 'cimgui'. Tried the load the following dynamic libraries: Unable to load dynamic library 'cimgui' because of 'Failed to open the requested dynamic library (0x06000000) dlerror() = dlopen failed: library "cimgui" not found
  at ImGuiNET.ImGuiNative.igCreateContext (ImGuiNET.ImFontAtlas* shared_font_atlas) [0x00000] in <00000000000000000000000000000000>:0 
  at UImGui.UImGuiUtility.CreateContext () [0x00000] in <00000000000000000000000000000000>:0 
  at UImGui.UImGui.Awake () [0x00000] in <00000000000000000000000000000000>:0 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions