KeraLua icon indicating copy to clipboard operation
KeraLua copied to clipboard

Linux library is not portable across distributions

Open jpboivin opened this issue 2 years ago • 1 comments

Hello,

It seems that the current NuGet package does not work with the official .NET images (i.e. mcr.microsoft.com/dotnet/runtime:5.0) as liblua54.so is compiled against a specific version of glibc, which is not the one from this Docker image. This result in a typical DllNotFoundException as the system loader fails to load Lua's native dependencies.

I manually recompiled Lua from within the same Docker image to have a SO targeting the same version of the system libraries (and it worked), but this is less than ideal. I wonder if the Linux library shouldn't be compiled in a way that it will be portable across most Linux distributions using a somewhat recent version of glibc? In the past, I've used Holy Build Box for that, and it worked quite nicely.

jpboivin avatar Apr 13 '22 02:04 jpboivin

Yes, deploying binaries on linux have been always painful. If you know a better and portable way please feel free to send a PR.

I know some libraries build using musl and depending only on system calls. I am not sure if this is the best approach

viniciusjarina avatar Apr 13 '22 03:04 viniciusjarina