非常に単純な C ファイル (foo.c と呼ばれる) があるとします。
int main()
{
printf("foo");
return 0;
}
今私はgccを呼び出します:
gcc foo.c
gcc を (上記の例のようにオプションなしで) 呼び出すと、デフォルトでどのライブラリがリンクされ、どこに配置されますか? (Mac OS X 10.7 の場合)
この-v
オプションをgcc
使用すると、ライブラリパス、デフォルトのライブラリ、リンク先のオブジェクトファイルなど、使用するデフォルトのオプションに関する情報がダンプされます。
-Wl,--verbose
オプションを指定すると、gccはリンカーにを渡します。リンカー--verbose
は、失敗した検索と成功した検索の両方を含め、ライブラリを探している場所を正確にダンプします。
両方のオプションを組み合わせると、どのライブラリがリンクされているのか、なぜそれらがリンクされているのかが正確にわかります。
gcc -v foo.c -Wl,--verbose
ldd binary_name. http://www.opennet.ru/man.shtml?topic=ldd&category=1&russian=2
標準ライブラリはデフォルトでリンクされています。それらは Linux マシンの /usr にあります。