UrQMD 시뮬레이션 패키지를 설치하기 위해 Linux Mint 21 Cinammon을 사용하고 있습니다. 모든 필수 종속성을 지정하여 ROOT를 설치했습니다.웹 페이지. 설명은 다음과 같습니다.
$ 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과 함께 설치했습니다.