ビルドに必要なファイルの種類を整理する

2019-08-04#c

最近、mrubyを触ってるんだけど、ビルド周りの知識があいまいで自分が何をしているのかよくわからないときがあったので、Head First Cを読み直した。あらためて基本的なことを確認できたので、メモに残しておく。

*.c

*.h

*.o

lib*.a

lib*.so

実行可能ファイル

まとめ

以上のような種類のファイルから最終的に実行可能ファイルができるまでの図を書いてみた。

foo.c  -> foo.o  ----------------+-> qux
                                 |
bar1.c -> bar1.o -+-> libbar.a --+
                  |              |
bar2.c -> bar2.o -+              |
                                 |
baz1.c -> baz1.o -+-> libbaz.so -+
                  |
baz2.c -> baz2.o -+