共通シンボルをグローバル定義として扱うかどうかを指定します。この機能は ifort でのみ利用できます。
Linux*: | -fcommon -fno-common |
macOS*: | -fcommon -fno-common |
Windows*: | なし |
なし
-fcommon |
コンパイラーは、共通シンボルをグローバル定義として扱いません。 |
このオプションは、コンパイラーが共通シンボルをグローバル定義として扱うかどうかを指定します。
-fno-common オプションは、共通シンボルをグローバル定義として扱うようにコンパイラーに指示します。このオプションを使用する際、1 つのモジュールで宣言された 1 つの共通変数のみ利用できます。複数のシンボル定義は、リンク時エラーを起こします。
macOS* では、ar ユーティリティーを使用してビルドされたライブラリーに、Fortran モジュールデータを含むオブジェクトがあり、実行可能な関数がない場合、モジュールデータに対応するシンボルは、それらを参照するオブジェクトがライブラリーにリンクされると、解決されない可能性があります。これは、-fno-common オプションを指定してコンパイルすることで回避できます。
なし