|
依存ファイル(いそんふぁいる、Dependent file)とはプログラミング用語で、プログラムの実行ファイル以外に必要となるファイルのことである。 Windows OSでは実行ファイルとはいわゆる「EXEファイル」のことであるが、通常、コンパイル、リンクによって出力された実行ファイルは、プログラム内で使用する関数、クラスなどをランタイムライブラリから呼び出すため、そういったライブラリのない環境では動作しない。こういったDLL、OCXファイルなどを総称して依存ファイルと呼び、プログラムを配布する際にはこれらのファイルの配布も必要になる。 C/C++やDelphiなどの言語ではコンパイル/リンク時に「静的リンク」を行うことによってこれらのライブラリの機能を実行ファイル内部に取り込むことが出来る。これによって依存ファイルがなくとも異なる環境での実行が可能となるが、実行ファイルのサイズは大きくなり、ライブラリのバージョンアップ時に対応するためにはコンパイルをやり直さなくてはならなくなる。「動的リンク」を行えば、実行時に都度、ライブラリにアクセスするため、ファイルサイズは抑えることが出来るが、ランタイムライブラリを別に配布する必要が生じる。 Visual Basicにおいては、バージョン6以前の場合、一連のランタイムライブラリが必須であり、これらを含んだ適切なインストーラを使用して他の環境へのインストールを行うか、あるいは共通ライブラリ群(いわゆるVBランタイム)のインストールを別途行う必要があった。 C#やVisual Basic バージョン7 (VB.net)以降ではこれらのライブラリは.NET FrameworkのCLR(Common Language Runtime : 共通言語ランタイム)として一元化された。よって.NET Frameworkがインストールされている環境(これをCLI=Common Language Infrastructureという)においては、それとは別に依存ファイルを気にする必要はなくなった。 C++/CLIにおいてはC++のネイティブコードと.NET Frameworkのマネージコードが混在するプログラムとなり、静的リンクによるビルドも出来ないため、.NET FrameworkだけでなくCRT (C Run-Time) が必須となる。 静的リンクが可能なのはネイティブコードを出力する場合だけであり、マネージコードなどの中間言語を出力して、仮想CPUやCLIといった環境で実行される場合は、必ず外部ランタイムが必要となる。 上記に挙げたように、依存ファイルを必要とするプログラムを実行するためには、通常それらを別にインストールしなければならないが、パッケージ管理システムを利用することで、依存ファイル・ランタイムを別途配布したりインストールしたりするときの手間を省くことができる。 == 関連項目 == * ダイナミックリンクライブラリ * ランタイムライブラリ * 静的リンク * 動的リンク * リンケージエディタ * パッケージ管理システム 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「依存ファイル」の詳細全文を読む スポンサード リンク
|