特定のバージョンのシステム ライブラリにリンクされている既存の独自の ELF バイナリを移植可能にする方法を探しています。ポータブルとは、必ずしもライブラリのソース コードがなくても、同じプロセッサ アーキテクチャと互換性のあるシステム カーネルを備えたすべてのシステムで実行可能ファイルを動作させることを意味します (ソース コードがなくても仕方がない場合は、それも問題ありません)。 .
これまでのところ、2 つの可能性を考えましたが、それらが可能かどうか、可能であればどちらを選択するかはわかりません。
- リンクされたすべてのライブラリとその依存関係を検索し、それらをバイナリのサブディレクトリに含め、Library-Path をそのディレクトリに変更します。
- ライブラリをバイナリ ファイルに静的に再リンクして、1 つの大きな実行可能ファイルにします (プログラムがチェックサムに基づいて自身を検証しない場合)。
私は作成した移植可能なプログラムを配布したくないので、ライセンスは問題ではありません。これは私的使用のみです。
回答ありがとうございます。