Ubuntu v12.10 で Eclipse CDT/CodeSourcery Lite を使用して C プロジェクトをクロスコンパイルしています。
Eclipse CDT には、次の 3 つの C プロジェクトがあります。
- exeTop // libmiddle.a で定義された関数を使用する実行可能ファイル
- libmiddle.a // libbottom.a で定義された関数を使用する静的ライブラリ
- libbottom.a // 他のライブラリに依存しないスタンドアロンの静的ライブラリ
libmiddle.a をビルドするには、libbottom.a を libmiddle のプロジェクト フォルダーにコピーする必要があります (こちらの手順を参照してください)。
ただし、exeTop をビルドするときは、libmiddle.a にリンクするだけでなく、libbottom.a (libmiddle.a が既にリンクしている) にもリンクする必要があります。
Q1. exeTop から libbottom.a にリンクする必要があるのはなぜですか?
Q2. exeTop から libmiddle.a にリンクするために使用できるコンパイラまたはリンカー オプションはありますか?