Search Issue Tracker

Won't Fix

Votes

0

Found in

2021.3.34f1

2022.3.17f1

2023.2.7f1

2023.3.0b4

Issue ID

UUM-60821

Regression

No

[Linux] "Fallback handler could not load library" and/or "DllNotFoundException" when using Silk.NET plugin

--

-

Reproduction steps:
1. Open the attached project “LibdlTest.zip”
2. Open “Assets/Scenes/SampleScene.unity” scene
3. Click File > Build Settings…
4. Click “Add Open Scenes”
5. Select the “Development Build” checkbox
6. Click “Build And Run”

Expected results: Player is run without any errors in the development console, and there are no “Fallback handler could not load library” errors in Player.log
Actual results: The development console shows a “DllNotFoundException” error when the Player is run, additionally you can also see “Fallback handler could not load library” in the Player.log (see the logs below)

Reproducible with: 2021.3.34f1, 2022.3.17f1, 2023.2.0a22 (has “Fallback handler could not load library” error), 2023.2.0a23, 2023.2.7f1, 2023.3.0b4 (doesn’t have the “Fallback handler could not load library” error)

Reproduced on: Ubuntu 22.04.3

Logs:
Fallback handler could not load library <path/to/project/build>/test_Data/MonoBleedingEdge/x86_64/libdl.so
Fallback handler could not load library <path/to/project/build>/test_Data/MonoBleedingEdge/x86_64/libdl
DllNotFoundException: libdl assembly:<unknown assembly> type:<unknown type> member:(null)
at (wrapper managed-to-native) Silk.NET.Core.Loader.Libdl.dlopen(string,int)
at Silk.NET.Core.Loader.LibraryLoader+UnixLibraryLoader.CoreLoadNativeLibrary (System.String name) [0x00000] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Core.Loader.LibraryLoader.LoadWithResolver (System.String name, Silk.NET.Core.Loader.PathResolver pathResolver) [0x0003b] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Core.Loader.LibraryLoader.TryLoadNativeLibrary (System.String[] names, Silk.NET.Core.Loader.PathResolver pathResolver, System.IntPtr& result) [0x00017] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Core.Loader.LibraryLoader.TryLoadNativeLibrary (System.String name, Silk.NET.Core.Loader.PathResolver pathResolver, System.IntPtr& result) [0x00000] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Core.Loader.UnmanagedLibrary.TryCreate (System.String name, Silk.NET.Core.Loader.LibraryLoader loader, Silk.NET.Core.Loader.PathResolver pathResolver, Silk.NET.Core.Loader.UnmanagedLibrary& library) [0x00000] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Core.Contexts.DefaultNativeContext.TryCreate (System.String name, Silk.NET.Core.Contexts.DefaultNativeContext& context) [0x0000b] in <60b219252eb448c2b8060c9769dd10a2>:0
at Silk.NET.Assimp.Assimp.CreateDefaultContext (System.String[] n) [0x00006] in <5427bd99fee74d529b57dc204b026d9d>:0
at Silk.NET.Assimp.Assimp.GetApi () [0x0000a] in <5427bd99fee74d529b57dc204b026d9d>:0
at MainScript.Start () [0x00001] in </path/to/project>/Assets/MainScript.cs:10

Workaround for “DllNotFoundException”: copy local libdl.so.2 file found with ‘whereis libdl.so2’ command to the directory where the “Fallback handler could not load library“ error is happening. For example:
$ whereis libdl.so.2
libdl.so.2: /usr/lib/x86_64-linux-gnu/libdl.so.2 /usr/lib32/libdl.so.2
$ cp /usr/lib/x86_64-linux-gnu/libdl.so.2 <project build directory>/test_Data/MonoBleedingEdge/x86_64/libdl && cp /usr/lib/x86_64-linux-gnu/libdl.so.2 <project build directory>/test_Data/MonoBleedingEdge/x86_64/libdl.so && cp /usr/lib/x86_64-linux-gnu/libdl.so.2 <project build directory>/test_Data/MonoBleedingEdge/x86_64/libdl.so.2

Note: from 2023.2.0a23 versions, the “Fallback handler could not load library” disappears, and only “DllNotFoundException: libdl” remains which can be fixed with the previous workaround.

  1. Resolution Note:

    Thank you for reporting a bug to Unity.

    We have reviewed the issue carefully, and in this case, the team is unable to prioritize fixing this bug. There are a number of reasons we make this decision, including the impact and severity of the issue across our user and customer base, the possibility that future plans may solve the problem differently, and that a workaround for the bug is available.

    Today we will be closing this case. Thank you again for taking the time to report this issue, and please let us know if there is anything else that changes the impact or severity of this issue.

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.