ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

静的リンクと動的リンク

プログラムのリンク方式について調べたことをここにメモします。
スタティックリンク(静的リンク)はプログラムの生成(コンパイル時)にオブジェクト(ライブラリなど)をファイルにまとめる方式です。一つのファイルにまとめることが可能です。一方でダイナミックリンク(動的リンク)はコンパイル時にオブジェクトを取り込みません。プログラムの実行時に、必要になった場合にオブジェクトをロードすることとなります。

静的リンク(static link)

オブジェクトファイルのリンク時にプログラムの呼び出しを解決して,実行可能ファイルを生成するリンク方法
言い換えると...開発時に必要なプログラムをすべて連結し、それ単体で実行可能な形式のプログラムファイルを作成

動的リンク(dynamic link)

呼び出し先プログラムの情報を保持しない実行可能ファイルを生成するリンク方法
言い換えると...開発時にはライブラリなどの呼び出し側コードのみを実行ファイルに含め、実行時に呼び出される側のコード本体を含むライブラリなどを連結


f:id:a1026302:20220117174750p:plain