Linux(CentOS)マシンに2つのGCCコンパイラがインストールされています。古いバージョンのGCC(4.4.7)はデフォルトのフォルダ(CentOSに付属)にあり、新しいものは/usr/local/gcc/4.9.3/にあります。私のコードでは、MPIとLAPACK/LAPACKE/BLASライブラリを使用しています。古いGCCでは、次のようにソースをコンパイルしています(例えば "main.cpp")。デフォルトのGCCコンパイラをLinux上でMPIで使用するために変更する方法CentOS
mpiCC main.cpp -o main -L/home/USER1/lapack-3.6.1 -llapacke -llapack -lblas -lm -Wall
これでも古いGCC 4.4.7が呼び出されます。上記のMPIコンパイル(mpiCC)が/usr/local/gcc/4.9.3/el6/bin/の新しい場所から実行可能なGCC 4.9.3を起動するように変更する必要があるのは何ですか? MPICH Installerのガイドバージョン3.2(6ページ)から
:
「MPICH configureコンステップはあなたのためのC、C++、およびFortranコンパイラを探そうとしますが、デフォルトまたは必要性を上書きしたいのいずれかの場合configureが認識できないコンパイラを指定するには、コマンドラインで指定することができます[...]。例えば、両方のシステムでGNUコンパイラの代わりにインテルコンパイラを選択するには、 "
./configure CC=icc CXX=icpc F77=ifort FC=ifort ...
でGCCコンパイラの異なるバージョンを区別する方法はありますか?
2つのバージョンのgccがインストールされている理由は何ですか?あなたは、OSに付属の古いものを更新することができます。 –
CentOSはGCC 4.4.7に多くの依存関係があるためです。 (そのバージョンとまったく同じですが)GCCを新しいものに置き換えることはできませんが、新しいものをインストールする必要があります。それはなぜそれのようなものです、私は知らない。一方、4.4.7は私にとってはうまくいかず、より高いバージョンでコンパイル/作業するコードがあります。 – Boki