question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Not able to load native library..?

See original GitHub issue

I’m trying to build Bolero, but I’m getting errors pointing at this library. I see several other issues related to loading the unmanaged library, but I’m not sure if this is the same issue.

/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018: The "Nerdbank.GitVersioning.Tasks.GetBuildVersion" task failed unexpectedly. [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018: System.TypeInitializationException: The type initializer for 'LibGit2Sharp.Core.NativeMethods' threw an exception. [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:  ---> System.PlatformNotSupportedException: manjaro-x64 [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.RuntimeIdMap.GetNativeLibraryDirectoryName(String runtimeIdentifier) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.GitLoaderContext.GetNativeLibraryDirectory() [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.GitLoaderContext.LoadUnmanagedDll(String unmanagedDllName) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at System.Runtime.Loader.AssemblyLoadContext.ResolveUnmanagedDll(String unmanagedDllName, IntPtr gchManagedAssemblyLoadContext) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.Core.NativeMethods.git_libgit2_init() [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.Core.NativeMethods.InitializeNativeLibrary() [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.Core.NativeMethods..cctor() [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    --- End of inner exception stack trace --- [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.Core.NativeMethods.git_libgit2_opts(Int32 option, UInt32 level, String path) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.Core.Proxy.git_libgit2_opts_set_search_path(ConfigurationLevel level, String path) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at LibGit2Sharp.GlobalSettings.SetConfigSearchPaths(ConfigurationLevel level, String[] paths) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.GitExtensions.OpenGitRepo(String pathUnderGitRepo, Boolean useDefaultConfigSearchPaths) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.VersionOracle.Create(String projectDirectory, String gitRepoDirectory, ICloudBuild cloudBuild, Nullable`1 overrideBuildNumberOffset, String projectPathRelativeToGitRepoRoot) [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]
/home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/Nerdbank.GitVersioning.targets(71,5): error MSB4018:    at Nerdbank.GitVersioning.Tasks.GetBuildVersion.ExecuteInner() [/home/simendsjo/code/Bolero/src/Bolero.Build/Bolero.Build.csproj]

But as I have plenty of libraries lying around, locating a useful one shouldn’t be too hard, so maybe I’m on the wrong track.

  • /usr/lib/libgit2.so
  • /home/simendsjo/.nuget/packages/libgit2sharp.nativebinaries/2.0.298/runtimes/linux-x64/native/libgit2-ef5a385.so
  • /home/simendsjo/.nuget/packages/nbgv/3.0.26/tools/netcoreapp2.1/any/runtimes/linux-x64/native/libgit2-572e4d8.so
  • /home/simendsjo/.nuget/packages/nerdbank.gitversioning/3.0.50/build/runtimes/linux-x64/native/libgit2-572e4d8.so
  • /home/simendsjo/.nuget/packages/nerdbank.gitversioning.lkg/1.6.20-beta-gfea83a8c9e/build/lib/linux/x86_64/libgit2-1196807.so
  • /home/simendsjo/.dotnet/tools/.store/nbgv/3.0.50/nbgv/3.0.50/tools/netcoreapp2.1/any/runtimes/linux-x64/native/libgit2-572e4d8.so

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:1
  • Comments:12 (2 by maintainers)

github_iconTop GitHub Comments

4reactions
AArnottcommented, Jan 25, 2020

Thanks. Since libgit2 is a native dependency, which depends on libssl which seems to be different for every version of every distro, each version requires work to support. libgit2sharp folks are working on it. The solution (I hope) that’s coming is that we’re removing the libssl dependency completely so that it’s much more distro independent.

2reactions
cdunfordcommented, Jul 15, 2020

Basically the same issue on arch:

Unhandled exception. System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.TypeInitializationException: The type initializer for 'LibGit2Sharp.Core.NativeMethods' threw an exception.
 ---> System.PlatformNotSupportedException: arch-x64
   at Nerdbank.GitVersioning.RuntimeIdMap.GetNativeLibraryDirectoryName(String runtimeIdentifier) in D:\a\1\s\src\Nerdbank.GitVersioning.Tasks\RuntimeIdMap.cs:line 73
   at Nerdbank.GitVersioning.GitLoaderContext.GetNativeLibraryDirectory() in D:\a\1\s\src\Nerdbank.GitVersioning.Tasks\GitLoaderContext.cs:line 63
   at Nerdbank.GitVersioning.GitLoaderContext.LoadUnmanagedDll(String unmanagedDllName) in D:\a\1\s\src\Nerdbank.GitVersioning.Tasks\GitLoaderContext.cs:line 41
   at System.Runtime.Loader.AssemblyLoadContext.ResolveUnmanagedDll(String unmanagedDllName, IntPtr gchManagedAssemblyLoadContext)
   at LibGit2Sharp.Core.NativeMethods.git_libgit2_init()
   at LibGit2Sharp.Core.NativeMethods.InitializeNativeLibrary()
   at LibGit2Sharp.Core.NativeMethods..cctor()
   --- End of inner exception stack trace ---
   at LibGit2Sharp.Core.NativeMethods.git_libgit2_opts(Int32 option, UInt32 level, String path)
   at LibGit2Sharp.Core.Proxy.git_libgit2_opts_set_search_path(ConfigurationLevel level, String path)
   at LibGit2Sharp.GlobalSettings.SetConfigSearchPaths(ConfigurationLevel level, String[] paths)
   at Nerdbank.GitVersioning.GitExtensions.OpenGitRepo(String pathUnderGitRepo, Boolean useDefaultConfigSearchPaths)
   at Nerdbank.GitVersioning.Tool.Program.OnGetVersionCommand(String projectPath, String format, String singleVariable, String versionOrRef) in D:\a\1\s\src\nbgv\Program.cs:line 285
   at Nerdbank.GitVersioning.Tool.Program.MainInner(String[] args) in D:\a\1\s\src\nbgv\Program.cs:line 150
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   at Nerdbank.GitVersioning.Tool.Program.Main(String[] args) in D:\a\1\s\src\nbgv\Program.cs:line 64
Read more comments on GitHub >

github_iconTop Results From Across the Web

JNI Unable to load native library - java
That error means that the Java VM is finding and attempting to load your .dll, but additional .dlls that your .dll depends on...
Read more >
How to Fix the Unable to Load NativeHadoop Library for ...
The “Unable to load native-hadoop library for your platform” warning typically occurs when you are trying to run Hadoop on a system with...
Read more >
"Error occurred during initialization of VM", "Unable to load ...
"Error occurred during initialization of VM", "Unable to load native library Can't find dependent libraries"
Read more >
How to Handle the UnsatisfiedLinkError Runtime Error in ...
The Java java.lang.UnsatisfiedLinkError is thrown when a program uses a native libaray but is unable to find it at runtime for some reason....
Read more >
Workaround for Unable to load native library: libnative ...
The workaround · Create a java class that subclasses android.app.NativeActivity and load the libnative-activity.so library with System.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found