配置时找不到Fortran编译器

问题描述

我正在尝试在Mac(10.15.7)上安装一些代码。我按照指示进行操作

No suitable fortran compiler found (cause: 'cannot determine ifort version. (complete log in /Users/joe/Documents/Research/code/plc_3.0/plc-3.01/build/config.log)') The configuration Failed (complete log in /Users/joe/Documents/Research/code/plc_3.0/plc-3.01/build/config.log)

但是我明白了

which ifort

/usr/local/bin/ifort给出

ifort -v

ifort version 19.1.1.216给出

Checking for program 'ifort' /opt/anaconda3/envs/py38/bin/x86_64-apple-darwin13.4.0-gfortran find program=['ifort'] paths=['/opt/anaconda3/envs/py38/bin','/opt/anaconda3/condabin','/Library/Frameworks/Python.framework/Versions/3.8/bin','/usr/local/bin','/opt/local/bin','/Users/joe/Documents/Research/openmpi-3.0.0/oshmem/mca/scoll/mpi/bin','/opt/local/sbin','/usr/bin','/bin','/usr/sbin','/sbin','/Library/TeX/texbin','/Library/Apple/usr/bin'] var='FC' -> ['/opt/anaconda3/envs/py38/bin/x86_64-apple-darwin13.4.0-gfortran'] ['/opt/anaconda3/envs/py38/bin/x86_64-apple-darwin13.4.0-gfortran','-logo'] err: ld: library not found for -logo collect2: error: ld returned 1 exit status from /Users/joe/Documents/Research/code/plc_3.0/plc-3.01: cannot determine ifort version. from /Users/joe/Documents/Research/code/plc_3.0/plc-3.01: The configuration Failed

所引用的config.log的最后一部分是

{{1}}

解决方法

日志说了不同的话:

  • waf在您的默认路径中寻找了ifort

    • /opt/anaconda3/envs/py38/bin
    • /opt/anaconda3/condabin
    • /Library/Frameworks/Python.framework/Versions/3.8/bin
    • /usr/local/bin
    • /opt/local/bin
    • [...]
  • waf已经找到了一个实际上为/opt/anaconda3/envs/py38/bin/x86_64-apple-darwin13.4.0-gfortran的fortran编译器,但是在执行时,它找不到一个libogo库。它在错误的位置找到了它,因为/usr/local/bin/opt/anaconda3/envs/py38/bin在路径列表中。

要更改路径列表,可以在名为path_list的waf文件中使用find_program函数的参数wscript

但是更简单的方法可能是在调用waf时更改PATH:

PATH="/usr/local/bin:$PATH" ./waf configure --install_all_deps

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...