You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The release for csv2sql is currently built on ubuntu 20.4, when a user attempted to use it on ubuntu 18.0 it gave an error like
../csv2sqk_web/erts-12.0.3/bin/beam.smp: error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory`
It seems the shared library libtinfo.so.6 might not be available on ubuntu-18.0.
More insights
Elixir release won’t just depend on your OS flavor. Instead, an Elixir release depends on your processor architecture and C library version (glibc package). This is because there are still system dependencies in place even though Erlang bytecode is platform-independent.
Ideally, we want to support different operating systems like Linux, windows, and mac and the release should run independently of the user's processor architecture.
Till now I have found two ways to achieve this:
Use docker to build the release for different platforms and operating systems - We can have a docker setup that builds the release for all the different operating systems that we want to target, however, I am not sure if this can bypass the Target architecture limitation, also I am not sure how it will work out for windows-based docker containers.
The second approach is using something like buritto which uses bakeware
The release for csv2sql is currently built on ubuntu 20.4, when a user attempted to use it on ubuntu 18.0 it gave an error like
It seems the shared library
libtinfo.so.6
might not be available on ubuntu-18.0.More insights
Ideally, we want to support different operating systems like Linux, windows, and mac and the release should run independently of the user's processor architecture.
Till now I have found two ways to achieve this:
Use docker to build the release for different platforms and operating systems - We can have a docker setup that builds the release for all the different operating systems that we want to target, however, I am not sure if this can bypass the
Target architecture
limitation, also I am not sure how it will work out for windows-based docker containers.The second approach is using something like buritto which uses bakeware
Some Helpful References I have found:
Mix release docs about release requirements
This discussion on elixirforum
This blog
The text was updated successfully, but these errors were encountered: