🍋
FatELF(Macのfat binaryのLinux版)
MacOSのMach-Oのオブジェクトファイルではfat binaryといって複数のアーキテクチャの実行イメージを共存させることができます。このしくみを利用してひとつの実行ファイルでx86_64とarm64の両方に対応することができます。
同様のことがLinuxでもできないかなと思ったら、これを教えてもらいました。
FatELF: Universal Binaries for Linux.
最終更新は2021年7月。
githubにあるコマンドラインツールで、複数のELF実行ファイルをひとつにまとめたてFatELFファイルを作ったり、FatELFから必要なものを取り出すのはできそうです。
Ubuntu 9.04 でデモ版が作られました。
ここに書いてある限りは 2021年の段階でLinuxカーネルのメインラインにはマージされておらず、検索しても特に新しい情報は無いので今もマージされていないのだろうと思います。
特に強いニーズが無かったのでしょうね。
Discussion