インテル® Fortran コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

Fortran スタティック・ライブラリー・プロジェクトの使用

Fortran スタティック・ライブラリー (.LIB) は、メインプログラムとは別にコンパイルされ、保存されているコードブロックです。Fortran スタティック・ライブラリーは、Fortran のプロジェクトの種類の 1 つです。

統合開発環境 (IDE) からスタティック・ライブラリーを作成するには、プロジェクトの種類として、[Static Library (スタティック・ライブラリー)] を指定します。スタティック・ライブラリーをコマンドラインから作成するには、/c オプションを指定し、LIB コマンドを使用します。

スタティック・ライブラリーをコマンドラインからコンパイルするときには、リンクを禁止するために /c オプションを指定してください。このオプションを指定しないと、ライブラリーにはメインプログラムが含まれていないため、コンパイラーはエラーを発行します。

スタティック・ライブラリーを作成する際、デフォルトのライブラリーに対してリンク・ディレクティブを挿入しないようにするかどうかを問われます。デフォルトでは、このチェックボックスはオンです。これはリンク・ディレクティブが挿入されないことを意味します。このオプションは、このスタティック・ライブラリーをほかの Fortran プロジェクトで使用する予定がある場合に選択してください。このオプションにより、スタティック・ライブラリーが Fortran ランタイム・ライブラリーのバージョンを指定しないようにします。スタティック・ライブラリーが別の Fortran プロジェクトにリンクされている場合、その Fortran プロジェクトのランタイム・ライブラリーもスタティック・ライブラリーに使用されます。

このスタティック・ライブラリーを C/C++ プロジェクトで使用する予定がある場合には、このオプションをオフにすると良いかもしれません。このオプションをオンにする場合は、使用する Fortran ランタイム・ライブラリーを [リンカー (Linker)] の [Additional Dependencies (追加の依存ファイル)] プロパティーで明示的に指定する必要があります。プロジェクトを作成後に、[Disable Default Library Search Rules (既定のライブラリー検索規則を無効にする)] プロパティーで設定を変更することができます。

スタティック・ライブラリーは、[ソリューション エクスプローラー] ウィンドウで定義されたソースコードとオブジェクト・コードの集合です。ソースコードはプロジェクトをビルドするときにコンパイルされます。オブジェクト・コードは、リンク処理を省略して、.LIB ファイルにまとめられます。デフォルトでは、ライブラリー・ファイル名にはプロジェクト名が使用されます。スタティック・ライブラリーは、大きなプログラムを整理するときや、複数のプログラム間でルーチンを共有するときに、重要な役割を果たします。ライブラリーには、メインプログラムは含まれず、サブプログラムのみが含まれます。スタティック・ライブラリー・ファイルの拡張子は .LIB で、ファイルにはオブジェクト・コードが含まれます。

スタティック・ライブラリーをプログラムに関連付けると、ビルドの際に、ライブラリー内の必要なルーチンがすべて実行ファイルにリンクされます。スタティック・ライブラリーは、通常、独自のディレクトリーに格納されています。スタティック・ライブラリーを使用する場合、実行ファイル (.EXE) には、そのプログラムが実際に必要とするルーチンのみが取り込まれます。つまり、実行ファイルのサイズは、ライブラリー中のルーチンをすべて取り込む場合よりも小さくなります。どのルーチンを取り込むかはリンカーが決定します。

スタティック・ライブラリーを使用してビルドされたアプリケーションは、いずれもライブラリー内の同じバージョンのルーチンを使用するため、スタティック・ライブラリーはいくつものアプリケーションを最新の状態に保ちたいときに役立ちます。スタティック・ライブラリーのルーチンを変更したときには、アプリケーションを再リンクするだけで、そのルーチンを使用するすべてのアプリケーションを簡単に更新することができます。

サイズの大きなライブラリーは、専用のディレクトリーに配置して管理するようにしてください。ライブラリーを使用するプロジェクトは、リンク時にそのライブラリーを参照します。

ライブラリーを使用するプロジェクトをリンクするときには、外部プロシージャーの呼び出しを解決するために、ライブラリーから選択されたオブジェクト・コードがプロジェクトの実行形式コードにリンクされます。不要なオブジェクト・ファイルはリンクされません。

スタティック・ライブラリーをデバッグするには、ライブラリー・ルーチンを呼び出しているメインプログラムを使用する必要があります。メインプログラムとスタティック・ライブラリーの両方が、デバッグオプションによりコンパイルされていなければなりません。コンパイルとリンクが完了したら、[デバッグ] メニューを開き、[開始] を選択して、ブレークポイントを参照するか、デバッグツールバーのステップ・コントロールのボタンを使用します。

スタティック・ライブラリーの使用

IDE でスタティック・ライブラリーをメイン・プロジェクトに追加するには、[プロジェクト] メニューの [既存項目の追加...] オプションを使用します。表示されるダイアログボックスに、パスと .LIB 拡張子付きのライブラリー名を入力します。makefile を使用する場合、メイン・プロジェクトの makefile を編集してライブラリーを追加しなければなりません。プロジェクトをコマンドラインからビルドするときには、.LIB 拡張子を付け、必要に応じてパス名も含めてライブラリー名を追加します。