ericsink / SQLitePCL.raw

A Portable Class Library (PCL) for low-level (raw) access to SQLite
Apache License 2.0
512 stars 106 forks source link

Alpine ARM64 support #456

Closed dongle-the-gadget closed 2 years ago

dongle-the-gadget commented 2 years ago

The current binaries don't work in Alpine ARM64 (linux-musl-arm64). It would throw the following exception:

System.DllNotFoundException: Unable to load shared library 'e_sqlite3' or one of its dependencies. In order to help diagnose loading problems, consider setting the LD_DEBUG environment variable: Error loading shared library libe_sqlite3: No such file or directory
   at System.Runtime.InteropServices.NativeLibrary.LoadByName(String libraryName, QCallAssembly callingAssembly, Boolean hasDllImportSearchPathFlag, UInt32 dllImportSearchPathFlag, Boolean throwOnError)
   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryByName(String libraryName, Assembly assembly, Nullable`1 searchPath, Boolean throwOnError)
   at System.Runtime.InteropServices.NativeLibrary.Load(String libraryName, Assembly assembly, Nullable`1 searchPath)
   at SQLitePCL.NativeLibrary.Load(String libraryName, Assembly assy, Int32 flags)
   at SQLitePCL.Batteries_V2.MakeDynamic(String name, Int32 flags)
   at SQLitePCL.Batteries_V2.DoDynamic_cdecl(String name, Int32 flags)
   at SQLitePCL.Batteries_V2.Init()
ericsink commented 2 years ago

Duplicate of #453 ?

dongle-the-gadget commented 2 years ago

I don't think that supports ARM64.

ericsink commented 2 years ago

I'm confused. Did you look at #453 ? It also mentions the need to support musl-arm64. How is what you are reporting different? Why is this not a duplicate?

Yep, I was confused.

malte-v commented 2 years ago

Isn't this fixed now? I'm on Alpine aarch64 and the above error has disappeared after "upgrading" to the latest pre-release from nuget.

ericsink commented 2 years ago

@malte-v Yes, I think it is fixed, but I hadn't seen confirmation. Until you just posted your comment. Thanks.

I'll close this when I release 2.1.0.