ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris 11.1 リンカーとライブラリガイド Oracle Solaris 11.1 Information Library (日本語) |
7. システムのパフォーマンスを最適化するオブジェクトの構築
パート IV ELF アプリケーションバイナリインタフェース
静的方法は、-d n オプションが使用された場合に選択され、また、このモードを使用すると、再配置可能オブジェクトと静的実行プログラムを作成できます。この場合、再配置可能オブジェクトとアーカイブライブラリの入力形式だけが受け入れられます。-l オプションを使用すると、アーカイブライブラリが検索されます。
再配置可能オブジェクトを作成するには、-r オプションを使用します。
$ ld -r -o temp.o file1.o file2.o file3.o .....
注 - 静的実行プログラムの使用は制限されています。「静的実行可能ファイル」を参照してください。一般的に静的実行可能ファイルには、別のプラットフォームまたはオペレーティングシステムの別のバージョンで実行できないようにするために、プラットフォーム固有の実装の詳細情報が含まれています。Oracle Solaris 共有オブジェクトの多くの実装は、dlopen(3C) や、dlsym(3C) などの動的リンク機能に依存しています。「追加オブジェクトの読み込み」を参照してください。これらの機能は、静的実行可能ファイルでは使用できません。
静的実行可能ファイルを作成するには、-r オプションを指定せずに -d n オプションを使用します。
$ cc -dn -o prog file1.o file2.o file3.o .....
-a オプションを使用すると、静的実行可能プログラムの作成を指示できます。-r オプションを指定せずに -d n を使用した場合は、-a オプションと同じです。