You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M2芯片Mac使用GFortran编译SWAN报错求助

在M2芯片MacOS上编译SWAN模型遇类型不匹配错误

环境与操作步骤

  • 设备:搭载M2芯片的Apple MacOS系统
  • 编译对象:SWAN模型,按官方文档第3.2.2节说明操作
  • 执行命令:
    make config
    make ser
    
  • 使用编译器:GFortran,路径为/opt/homebrew/bin/gfortran

报错信息

make FOR=gfortran FFLAGS="-O -w -fno-second-underscore " \
            FFLAGS90="-O -w -fno-second-underscore -ffree-line-length-none " \
                INCS="" LIBS="" OBJS="swmod1.o swmod2.o SwanSpectPart.o m_constants.o m_fileio.o serv_xnl4v5.o mod_xnl4v5.o SwanGriddata.o SwanGridobjects.o SwanCompdata.o SdsBabanin.o SwanIEM.o SwanBraggScat.o SwanQCM.o  swan2coh.o swanmain.o swanpre1.o swanpre2.o swancom1.o swancom2.o swancom3.o swancom4.o swancom5.o swanout1.o swanout2.o swanser.o swanparll.o SwanReadGrid.o SwanReadADCGrid.o SwanReadTriangleGrid.o SwanReadEasymeshGrid.o SwanInitCompGrid.o SwanCheckGrid.o SwanCreateEdges.o SwanGridTopology.o SwanGridVert.o SwanGridCell.o SwanGridFace.o SwanPrintGridInfo.o SwanFindPoint.o SwanPointinMesh.o SwanBpntlist.o SwanPrepComp.o SwanVertlist.o SwanCompUnstruc.o SwanDispParm.o SwanPropvelX.o SwanSweepSel.o SwanPropvelS.o SwanTranspAc.o SwanTranspX.o SwanDiffPar.o SwanGSECorr.o SwanGradDepthorK.o SwanGradVel.o SwanInterpolatePoint.o SwanInterpolateAc.o SwanInterpolateOutput.o SwanConvAccur.o SwanConvStopc.o SwanThreadBounds.o SwanFindObstacles.o SwanCrossObstacle.o SwanComputeForce.o SwanIntgratSpc.o SwanBndStruc.o SwanReadfort18.o SwanPunCollect.o SwanSumOverNodes.o SwanMinOverNodes.o SwanMaxOverNodes.o SwanVTKWriteHeader.o SwanVTKWriteData.o SwanVTKPDataSets.o ocpids.o ocpcre.o ocpmix.o fftpack51.o" swan.exe
gfortran swmod1.f -c -O -w -fno-second-underscore  
gfortran swmod2.f -c -O -w -fno-second-underscore  
gfortran SwanSpectPart.f -c -O -w -fno-second-underscore  
gfortran m_constants.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran m_fileio.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran serv_xnl4v5.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran mod_xnl4v5.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanGriddata.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanGridobjects.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanCompdata.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SdsBabanin.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanIEM.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanBraggScat.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran SwanQCM.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran swan2coh.f90 -c -O -w -fno-second-underscore -ffree-line-length-none  
gfortran swanmain.f -c -O -w -fno-second-underscore  
swanmain.f:8947:22:

 7114 |       CALL SWBROADC ( BSPECS, 2*MDC*MSC*NBSPEC, SWREAL )                  40.30
      |                      2
......
 8947 |         CALL SWBROADC(IFLIDL(IGR1),1,SWINT)                               40.30
      |                      1
Error: Type mismatch between actual argument at (1) and actual argument at (2) (INTEGER(4)/REAL(4)).
make[1]: *** [swanmain.o] Error 1
make: *** [ser] Error 2

疑问

该错误是GFortran版本问题导致,还是M2芯片的架构兼容性问题?


内容的提问来源于stack exchange,提问作者ThreeOrangeOneRed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 16:04:53