./cshrcでデフォルトのコンパイラへのパスを設定する方法

./cshrcでデフォルトのコンパイラへのパスを設定する方法

私はCシェルを持つUNIXワークステーションを使用しています。 2つのmpif90コンパイラがシステムにインストールされています。 1つはifortを使用してコンパイルされ、もう1つはgfortranを使用してコンパイルされます。デフォルトの mpi コンパイラは gfortran でコンパイルされます。

では、デフォルトのコンパイラをifortコンパイラに変更したいと思います。 "/usr/local/mvapich2-icc/bin"フォルダに保存されます。だから~/.cshrcファイルに以下を追加しました。

setenv mpif90 /usr/local/mvapich2-icc/bin/mpif90

端末で「source ~/.cshrc」を実行してください。しかし、これはあまり効果がないようです。 「which mpif90」と入力すると、表示されるパスはまだgfortranでコンパイルされたパスです。

呼び出されたデフォルトのコンパイラがifortでコンパイルされたコンパイラになるように環境を正しく設定するにはどうすればよいですか?

どんな助けでも大変感謝します。ありがとうございます。

ベストアンサー1

最も簡単な方法は$ PATHを調整することです。

set path = (/usr/local/mvapich2-icc/bin $path)

ただし、これは/usr/local/mvapich2-icc/bin/のすべての実行可能ファイルがデフォルトパスの実行可能ファイルの前に見つかることを意味します。おそらく望んでいないでしょう(わかりません)。

Makefileを使用してソフトウェアをコンパイルする場合は、適切なMPIコンパイラを使用するようにその中に変数を定義する方が良いでしょう。

おすすめ記事