lapack - 有没有办法获取liblapack.a的版本?

标签 lapack

我通过使用cmake编译安装了lapack 3.4.2和3.5.0。在 lapack 3.5.0 的安装目录中,我找到一个文件 ./pkgconfig/lapack.pc ,上面写着 Version: 3.4.2。所以我不确定我是否真的在那里安装了 lapack 3.5.0。

有没有办法直接从liblapack.a(或Windows下的LAPACK.lib)获取lapack的版本?例如,来自库中的例程或使用特定工具?

最佳答案

lapack 函数 ilaver()专为您打造!

它的原型(prototype)是不言自明的:

subroutine ilaver   (   integer     VERS_MAJOR,
    integer     VERS_MINOR,
    integer     VERS_PATCH 
)   

这里有两个程序演示如何使用它:

  • 在fortran程序中,由gcc main.f90 -o main -llapack编译

    PROGRAM VER
    IMPLICIT NONE
    
      INTEGER major, minor, patch
      CALL ilaver( major,minor, patch )
      WRITE(*,*) "LAPACK ",major,".",minor,".",patch
    END PROGRAM VER
    
  • 在c程序中,由gcc main.c -o main -llapack编译

    #include <stdio.h>
    
    extern ilaver_(int* major,int* minor,int* patch);
    
    int main()
    {
    
        int major=0;
        int minor=0;
        int patch=0;
    
        ilaver_(&major,&minor,&patch);
    
        printf("lapack %d.%d.%d\n",major,minor,patch);
    }
    

关于lapack - 有没有办法获取liblapack.a的版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28498256/

相关文章:

C++,Lapack Cholesky 分解实现不准确的结果

c - 向量化嵌套索引

c++ - 代码::Blocks 和 Lapack

c++ - 用一个简单的例子理解 C++ 中的 LAPACK 调用

scipy - 使用 SciPy 的 Python 绑定(bind)到 LAPACK 进行 LDLt 分解

c++ - Mac OS X 中 undefined reference _cblas_dgemm

c++ - 使用 LAPACK 访问子矩阵

fortran - 如果我包含该库,fortran 的 'matmul' 会使用 MKL 吗?

fortran - 是否有 LU 分解的命令或子程序?

c++ - 我在 CentOS 上得到 “lapacke.h: No such file or directory”