リンカとは?りんか
リンカとは、コンパイラが翻訳した複数のファイルと、あらかじめ用意された部品(ライブラリ)をつなぎ合わせ、そのまま実行できる1つのファイルにまとめるプログラム。連係編集プログラムとも呼ぶ。試験では「人が書いたプログラム→コンパイラ→リンカ→実行できる形」という工程の順序と、リンカが作る成果物がロードモジュールであることが問われる。
最終更新:2026-10-09
この語が出る過去問を解く →背景
プログラムを1本の長い原稿として書くと、1か所直すたびに全体を翻訳し直すことになり、複数人で手分けすることもできなかった。そこで機能ごとにファイルを分けて別々に翻訳し、最後にまとめて1本にする工程を切り出した。日付計算や画面表示のような共通処理を部品として使い回せるようになり、直した部分だけ翻訳し直せば済むようになった。
具体例
マイクロソフトの開発ツールVisual Studioで「ビルド」を実行すると、まずコンパイラが各ファイルを翻訳し、続けてリンカが画面表示などの標準の部品と結び付けて、ダブルクリックで動く1つの.exeファイルを作る。
試験での引っ掛け
翻訳するのがコンパイラ、つなぐのがリンカで、この2つの役割を入れ替えた選択肢が定番。またリンカの出力は「実行できる形のファイル=ロードモジュール」であって、実行そのものではない。ロードモジュールを主記憶へ読み込んで動かすのはOS側(ローダ)の仕事になる。
関連用語
出た過去問
出典:平成28年度 春期 基本情報技術者試験 午前 問20(IPA)
リンカの機能として,適切なものはどれか。
正解:相互参照の解決などを行い,複数の目的モジュールなどから一つのロードモジュールを生成する。
要点:リンカは目的モジュールを結合し相互参照を解決する
コンパイラやアセンブラが出力する目的モジュールには、他のモジュールで定義された関数や変数への未解決の参照が残っている。リンカはこれら複数の目的モジュールやライブラリを結び付け、相互参照のアドレスを解決して、実行可能な一つのロードモジュールにまとめる。主記憶への読込みはローダの仕事であり、リンカとは役割が異なる。
出典:平成30年度 秋期 基本情報技術者試験 午前 問20(IPA)
リンカの機能として,適切なものはどれか。
正解:相互参照の解決などを行い,複数の目的モジュールなどから一つのロードモジュールを生成する。
要点:リンカは目的モジュールを結合しロードモジュールを作る
リンカは、コンパイル結果である複数の目的モジュールやライブラリを結合し、外部参照のアドレスを解決して実行可能な一つのロードモジュールを作る。この処理を連係編集と呼ぶ。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。