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

Mac下运行Fortran编译程序报错:dyld: Library not loaded: @rpath/libgfortran.3.dylib

解决Mac上gfortran编译后运行时动态库找不到的问题

嘿,我之前也碰到过几乎一模一样的问题!你编译Fortran程序成功生成了a.out,但运行时dyld找不到libgfortran.3.dylib,这是Mac上gfortran常见的动态库路径配置问题,给你几个靠谱的解决办法:

首先先确认你的gfortran安装位置,在终端里输入:

which gfortran

一般用Homebrew装的话,路径会是/usr/local/bin/gfortran或者/opt/homebrew/bin/gfortran(M系列芯片的Mac)。

方法一:临时设置环境变量(立即生效)

在终端里先执行这条命令,把gfortran的库路径加到动态库搜索路径里:

export DYLD_LIBRARY_PATH=$(dirname $(which gfortran))/../lib

然后再运行你的程序:

./a.out

这样应该就能正常输出Hello World了。如果想让这个设置永久生效,把上面的export命令加到你的shell配置文件里:

  • 如果你用zsh(Mac默认shell),编辑~/.zshrc
  • 如果你用bash,编辑~/.bash_profile
    添加后保存,重启终端或者执行source ~/.zshrc(对应你的配置文件)就能永久生效。

方法二:编译时指定动态库路径(一劳永逸)

下次编译的时候,加上-Wl,-rpath参数,直接把库路径嵌入到生成的可执行文件里:

gfortran -Wl,-rpath,$(dirname $(which gfortran))/../lib first.f95

这样生成的a.out以后运行时就不用再设置环境变量了,直接./a.out就能跑。

方法三:重新安装gfortran(如果上面方法都不行)

如果是Homebrew安装的gfortran,可能是安装过程中库路径没配置对,试试重新安装:

brew reinstall gcc

因为gfortran是GCC套件的一部分,重装gcc会同时修复gfortran的相关依赖。

补充:你的测试代码格式化后是这样的

! Fortran Program
program first
    print *, "Hello World"
end program first

运行时的错误提示:

dyld: Library not loaded: @rpath/libgfortran.3.dylib

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:28:51