.soと.a

就職して早x年。初めて共有ライブラリと静的ライブラリについて学ぶ。
.soは共有ライブラリ(たぶんshared objの略)で実行時にロードされる。なので、コンパイル・リンク時は-lxxxでxxxのヘッダさえあればよい。
.aはリンクの時にオブジェ(.o)と同様パスで.aのありかを指定し、生成ファイルにひっつけてしまう。だけど、ライブラリを生成するときはライブラリにはひっつかない。

初めて知った。いままでなんとなく知っていた程度で適当に流してきたけど。