Rustで作成した共有ライブラリをLinux環境で使用するには,ターゲットをx86_64-unknown-linux-muslでビルドします.これをAlpine Linuxで実行すると,依存関係でエラーがでます.Alpine Linuxは必要なパッケージを自分で明示しないと動かないからです.
ImportError: Error loading shared library libgcc_s.so.1
不足するlibgcc_s.so.1を追加するために,libgcc*1を追加します.
ImportError: Error loading shared library ld-linux-x86-64.so.2: No such file or directory
不足するld-linux-x86-64.so.2を追加するために,libc6-compat*2を追加し,リンクを生成します.
ln -s /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2
まとめると,下記を実行することになります.
apk add --no-cache libgcc libc6-compat ln -s /lib/libc.musl-x86_64.so.1 /lib/ld-linux-x86-64.so.2