そこで、今日、C++ でいくつかの基本的な支援機能を備えた静的ライブラリを作成しました。Clang 3.2 (SVN スナップショット) でビルドしました。ただし、それにリンクするテスト プログラム (prog.cpp) を実行しようとすると、次のエラーが発生します。
~/Projects/CPP/AssisterLib> g++ prog.cpp -o プログラム -static -L. -ラシスター /usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: -lm が見つかりません /usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../x86_64-suse-linux/bin/ld: -lc が見つかりません collect2: ld が 1 つの終了ステータスを返しました
G++ と Clang++ で同じエラーが発生します。どちらも /usr/lib64 (OpenSUSE の glibc-devel で提供) にある libc.a と libm.a が見つからないようです。追加-L/usr/lib64
してもエラーは発生しません。
ld がこれらのライブラリを見つけられないのはなぜですか? 行方不明のフラグはありますか?