リンク

ここでは、ツールやライブラリとリンクする方法を設定/変更するのに使うオプションについて説明します。 また、ldリンカの出力を定義するオプションについても説明します。リンカの詳細は ld の man page を参照してください。

オプション 説明
-Ldirectory directoryで指定したディレクトリを検索してライブラリを探すようリンカに指示します。
-Qoption,tool,list 一連のコンパイル処理の中で、アセンブラやリンカなど別のプログラムに引数リストを渡します。
-shared 実行ファイルの代わりに、動的共用オブジェクト(DSO)をビルドするようコンパイラに指示します。

-i_dynamic

インテルが提供するライブラリすべてを動的にリンクするよう指定します。

-static

「動的」とは対照的に、実行ファイルをすべてのライブラリへ静的にリンクします。

-Bstatic

このオプションは、ユーザのコマンドラインの場所に対応するリンカ・コマンドラインに配置されます。コマンドラインで渡されるライブラリのリンクの動作を制御するのに、このオプションを使用します。

-Bstatic の未使用時:

  • /lib/ld-linux.so.2 がリンクされます。
  • libmlibcxa、およびlibc は動的にリンクされます。
  • その他すべての lib は静的にリンクされます。

-Bstatic の使用時:

  • /lib/ld-linux.so.2 is not linked in
  • その他すべての lib は静的にリンクされます。

-Bdynamic

このオプションは、ユーザのコマンドラインの場所に対応したリンカ・コマンドラインに配置されます。コマンドラインで渡されるライブラリのリンクの動作を制御するのに、このオプションを使用します。

リンクを行わない設定にする

リンクを行わない設定にするには、-cオプションを使用します。例えば、次のコマンドを実行すると、file1.ofile2.oという2つのオブジェクト・ファイルを生成します。

上のコマンドを実行しても、これらファイルがリンクして1個の実行ファイルにはなりません。