ultraleap / UnrealPlugin

Ultraleap SDK for the Unreal Engine.
264 stars 68 forks source link

5.2 and 5.3 releases missing Linux version of libLeapC.so Error: libLeapC.so is incompatible with elf64-x86-64 #137

Open JJones780 opened 1 year ago

JJones780 commented 1 year ago

same libLeapC.so in Android and Linux directories In both UltraleapTracking_ue5_3.zip and UltraleapTracking_ue5_2.zip, others?

>  md5sum ./UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Linux/x64/libLeapC.so ./UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Android/arm64-v8a/libLeapC.so

39a144928cb9df21eedfd3103d96dc25  ./UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Linux/x64/libLeapC.so
39a144928cb9df21eedfd3103d96dc25  ./UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Android/arm64-v8a/libLeapC.so

Both libs are the same: ARM aarch64 ./UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Linux/x64/libLeapC.so: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=cfd1c14dd3ad4045db65389d4a0f4093dc982bab, stripped

Results in a link error during Linux plugin build ( in Editor as well as using RunUAT.sh ): ld.lld: error: /ssdB/UNREAL/Projects/TryLeap/Plugins/UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Linux/x64/libLeapC.so is incompatible with elf64-x86-64

JJones780 commented 1 year ago

WORKAROUND I copied and renamed the libLeapC.so.5 from the sdk install /usr/lib/ultraleap-hand-tracking-service/libLeapC.so.5 to my project plugin at ./UNREAL/Projects/TryLeap/Plugins/UltraleapTracking_ue5_3-4.11.0/Source/ThirdParty/LeapSDK/Lib/Linux/x64/libLeapC.so and the editor was able to link.

To manually compile ( and maybe required for editor to be successful too? ) I edited my ./UNREAL/Projects/TryLeap/Plugins/UltraleapTracking_ue5_3-4.11.0/UltraleapTracking.uplugin and removed other platforms ( ie
"PlatformAllowList": [ "Linux" ]in all three places ). I'm looking forward to trying out the plugin.. tomorrow..

JJones780 commented 1 year ago

Success! I'm getting hand tracking in UE5.3 on Linux ( Devuan Daedalus = Deb 6.1.55-1 ) with the above workaround ( as well as zip dir structure/access corrections in my other issue https://github.com/ultraleap/UnrealPlugin/issues/136 ).