gcc
コンパイル、リンクオプション
リンク関連
注意点
リンクの順番には依存性があり、あるオブジェクトが静的 ライブラリ内の関数を呼び出すときには呼び出される側の ライブラリは「後で」リンクする必要がある。
とのこと。.o、.aに関してもそうだが、-lなんとかで指摘ライブラリをリンクする場合も同様である。
静的ライブラリ
知識
gccで使われる静的ライブラリは、オブジェクトファイルをarでアーカイブしたもの
下記は、オブジェクトファイル static-library.o を、libstatic.a とする場合のコマンドラインの例。
ar r libstatic.a static-library.o
ファイル名の命名規則は lib + 名前 拡張子 .a とする。
リンク時は -l オプションで名前を指定する。