Linux MintにUrQMDをインストールすると、makeコマンドの後にエラーが発生します。

Linux MintにUrQMDをインストールすると、makeコマンドの後にエラーが発生します。

UrQMDシミュレーションパッケージをインストールするためにLinux Mint 21 Cinammonを使用しています。すべての必須依存関係を指定してROOTをインストールしました。Webページ。説明は次のとおりです。

$ tar -xvf urqmd-3.4.tar
$ make

make コマンドの後に私は得る。

    if [ -e lhc ]; then patch -R -p0 < lhc.patch || true; fi
rm -f lhc
gfortran -O3 -mcmodel=medium -c make22.f -o obj_x86_64/make22.o
make22.f:548:72:

  548 |  151        ba2(j)=0d0
      |                                                                        1
Warning: Fortran 2018 deleted feature: DO termination statement which is not END DO or CONTINUE with label 151 at (1)
make22.f:3593:72:

 3593 |  152  ba2(j)=p(2,j)/p(2,4)
      |                                                                        1
Warning: Fortran 2018 deleted feature: DO termination statement which is not END DO or CONTINUE with label 152 at (1)
make22.f:1644:45:

 1644 |          call getbran((/sig1,sig2,sig3/),1,3,dummy,1,3,channel)
      |                                             1
......
 3739 |       call getbran(x,minnuc,maxmes,xmax,im,ip,ir)
      |                                   2          
Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(8)).
make22.f:1670:39:

私はこれがgfortranのバージョンに関連していると思います。ソフトウェアがしばらく更新されていないため、バージョン6以下をお勧めします。また、gfortranとgccの以前のバージョンをインストールしてみましたが、やはり動作しませんでした。

答え1

数日前にこの問題が発生しましたが、実際にはgfortranバージョンの問題です。プログラムから抽出されたファイルには、「Linux.mk」ファイルを含むmkというフォルダがあります。ファイルの最初の行は次のようになります。

# We need to define a fortran compiler $(FC) and a linker $(LD).
 FC = gfortran
 LD = $(FC)

それに変える

 FC = gfortran-6
 LD = $(F77)

問題を解決しました。以前はgfortran-6をインストールし、gfortran-11と一緒にインストールしました。

関連情報