ブックマーク / zenn.dev/coord_e (1)

  • Rust でバイナリを配布する

    これは天久保 Advent Calendar 2022 二日目の記事です。明日は休日なのでやすみです。 記事は全部 GNU/Linux においての話で、ELF 実行可能形式のファイルのことを指してバイナリと呼びます。 Rust で書いたプログラムをビルドして配布したいことがあるでしょう。サーバーアプリケーションなどとなればコンテナイメージを配布するのがまっとうに思えますが、コマンドラインアプリケーションとなると実行の手軽さや起動オーバーヘッドへの配慮からやはりバイナリを配布する必要が出てくると思います。一方で Rust でビルドしたバイナリは[1]システムの glibc に動的リンクされており、可搬性が低い可能性があります。つまり、ビルドした環境より glibc のバージョンが低い環境でそのバイナリは動かない可能性があるということです。実例を見てみましょう。下のプログラム[2]は Deb

    Rust でバイナリを配布する
    yarumato
    yarumato 2022/12/04
    “Linuxでの話。Rustでビルドしたバイナリはシステムのglibcに動的リンクされ可搬性が低い。Debian 11(glibc 2.31) でビルドしたらDebian 10(glibc 2.28) で動作しない。musl libc利用した静的リンクは手軽だがglibcと挙動異なる点も。”
  • 1