octave安装错误:检测到BLAS库,但发现它与Fortran 77编译器设置不兼容

octave安装错误:检测到BLAS库,但发现它与Fortran 77编译器设置不兼容,fortran,octave,blas,fortran77,Fortran,Octave,Blas,Fortran77,我正在尝试在运行Redhat+IBMLSF的集群上安装Octave3.8.1。除了我的主目录外,我没有任何目录的写权限。我已经加载了三个模块1)pcre 8.33 2)blas 08/2013 3)lapack 3.5.0。但是当我运行./configure时,我得到了一个错误“configure:error:检测到一个BLAS库,但发现它与您的Fortran 77编译器设置不兼容”,如下图所示 我已经尝试加载模块gfortran64并添加F77=gfortran作为命令行参数,但这不起作用。

我正在尝试在运行Redhat+IBMLSF的集群上安装Octave3.8.1。除了我的主目录外,我没有任何目录的写权限。我已经加载了三个模块1)pcre 8.33 2)blas 08/2013 3)lapack 3.5.0。但是当我运行./configure时,我得到了一个错误“configure:error:检测到一个BLAS库,但发现它与您的Fortran 77编译器设置不兼容”,如下图所示


我已经尝试加载模块gfortran64并添加
F77=gfortran
作为命令行参数,但这不起作用。你能帮我解决这个问题吗?如果你需要任何信息,请在这个网页上告诉我。谢谢。

我也有同样的问题。在新安装的CentOS 6.3上,我成功地编译了octave 4.0.0

安装必要的依赖项(特别是blas、lapack和pcre)后,我在一些目录中创建了指向liblapack和libblas的符号链接,例如:

mkdir /some/path
cd /some/path
ln -s /usr/lib64/libblas.so.3 libblas.so
ln -s /usr/lib64/liblapack.so.3 liblapack.so
然后将相关目录放在LDFLAGS中,例如,在bash/sh中:

LDFLAGS=-L/some/path ./configure
所以要么octave的configure没有在/usr/lib64中查找,要么它要求库的名称以“.So”(而不是“.So.3”)结尾。我还没有调查这两个问题中的哪一个是问题,因为上述方法对我有效


/安装octave后,可以删除一些/path。

我的octave存储库编译得非常完美,直到我安装gfortran并开始收到相同的消息那天。我一直在使用f77(来自fort77软件包)。不知何故,configure脚本默认为gfortran,这[我相信]与BLAS库不兼容

我建议在倍频程编译中使用f77而不是gfortran


我在Mint 17.1上编译了octave 4.0.0,但我相信问题是一样的。

我不是Fortran专家,但我记得编译器不兼容。你知道你的BLAS是不是用gfortran编译的吗?什么GCC版本?集群中的BLAS是由管理团队提供的,所以我不知道他们是如何编译的。如果我自己编译BLAS,并使用我自己的BLAS副本制作octave 3.8.1,你能告诉我怎么做的步骤吗?谢谢!您可以运行命令ldd/path/to/libblas.so查看它链接到的编译器。要查找库,您可以键入
查找libblas.so
。谢谢。我试图运行locate libblas.so,但它没有返回任何结果。我已经通过键入“模块加载blas/08_2013”加载了blas。我不熟悉将库作为模块加载,但您可以尝试
module show blas/08_2013
以获取有关正在设置的shell环境变量的更多信息。如果可能,请在此处打印输出。谢谢!这对我也有帮助。