インストールまたはシステム環境の問題の修正

特定マシンの各ユーザーまたは全ユーザーがコンパイラーの 実行時に困難を経験する場合は、システム環境に問題があると思われます。 よく発生する問題と解決策を以下にいくつか示します。


xlf90: not found
xlf90_r: not found
xlf95: not found
xlf95_r: not found
xlf: not found
xlf_r: not found
f77: not found
fort77: not found
f90: not found
f95: not found

徴候: シェルは、コンパイラーを実行するコマンドを見つけることができません。
解決策: PATH 環境変数にディレクトリー/opt/ibmcmp/xlf/9.1/bin が入っていることを 確認してください。 コンパイラーが正しくインストールされていれば、そのコンパイラーを実行するのに 必要なコマンドは、このディレクトリーに入っています。


Could not load program program
Error was: not enough space

徴候: システムがコンパイラーまたはアプリケーション・プログラムをまったく実行できません。
解決策: この問題を経験したユーザーは、スタックおよびデータ用のストレージ限界を、 『unlimited』 に設定してください。 たとえば、ハードの限界もソフトの限界もこれらの bash コマンドで設定することができます。
    ulimit -s unlimited
    ulimit -d unlimited

または、ファイル /etc/security/limits.conf を 編集して、すべてのユーザーに無制限のスタック・セグメントとデータ・セグメントを (これらのフィールドに -1 を入力することによって) 与えると便利です。

ストレージの問題が XLF コンパイル済みプログラムにある場合は、 -qsave または -qsmallstack オプションを使用すれば、プログラムがスタック限界を 超えないようにすることができます。
説明: コンパイラーは、ストレージの限界を超える場合のある大きな内部データ域をユーザー用に割り振ります。 XLF コンパイル済みプログラムは、デフォルト時には旧バージョンよりも多くのデータをスタック上に置き、ストレージの 限界を超えることもあります。 必要な限界の正確な値を判別することはむずかしいので、無制限にすることをお勧めします。


Could not load program program
Could not load library library_name.so
Error was: no such file or directory

解決策: XL Fortran ライブラリーが /opt/ibmcmp/xlf/9.1/lib/opt/ibmcmp/xlf/9.1/lib64 にインストールされていることを確認してください。また、別のディレクトリーに libxlf90.so がインストールされている場合は、そのディレクトリーが組み込まれるように LD_LIBRARY_PATHLD_RUN_PATH 環境 変数 を設定してください。 この環境変数の詳細は、ライブラリー検索パスの設定を参照してください。


徴候: コンパイラーまたは XL Fortran アプリケーション・プログラムからのメッセージが 別の言語で表示されます。
解決策: 正しい各国語環境を設定してください。 env コマンドを使用して各ユーザー用の 各国語を設定することができます。 あるいは、各ユーザーが環境変数 LANGNLSPATHLC_MESSAGESLC_TIME、 および LC_ALL のうちの 1 つ以上を設定することもできます。 これらの変数の目的がよくわからない場合は、各国語サポートのための環境変数に詳細が 記載されているので参照してください。


徴候: I/O エラーでコンパイルが失敗します。
解決策: /tmp ファイル・システムのサイズを小さくするか、 あるいは、環境変数 TMPDIR をフリー・スペースがより たくさんあるファイル・システムのパスに設定してください。
説明: オブジェクト・ファイルが、ファイル・システムを保持できない ほど大きくなりすぎた可能性があります。 原因は、コンパイル単位が非常に大きいか、または宣言内の 大きな配列の全部または一部の初期化にある可能性があります。


徴候: 個別の makefiles およびコンパイル・スクリプトの数が 多過ぎて、簡単に保持または追跡ができません。
解決策: 構成ファイルにスタンザを追加して、これらのスタンザの名前を使用して コンパイラーとのリンクを作成してください。 別のコマンド名でコンパイラーを実行すれば、一貫性のある一連の コンパイラー・オプションやその他の構成の設定を多数のユーザーに 提供することができます。

IBM Copyright 2003