gpt4 book ai didi

c - 如何使用lapack库解决c中矩阵乘法的链接器错误?

转载 作者:太空宇宙 更新时间:2023-11-04 04:53:01 28 4
gpt4 key购买 nike

我使用 lapack 库进行了矩阵乘法运算,但出现如下错误。谁能帮我?

"error LNK2019: unresolved external symbol "void __cdecl dgemm(char,char,int *,int *,int *,double *,double *,int *,double *,int *,double *,double *,int *)" (?dgemm@@YAXDDPAH00PAN1010110@Z) referenced in function _main"
1>..\bin\matrixMultiplicationUsingLapack.exe : fatal error LNK1120: 1 unresolved externals

我在下面发布我的代码

    # define matARowSize 2      // -- Matrix 1 number of rows
# define matAColSize 2 // -- Matrix 1 number of cols
# define matBRowSize 2 // -- Matrix 2 number of rows
# define matBColSize 2 // -- Matrix 2 number of cols

using namespace std;


void dgemm(char, char, int *, int *, int *, double *, double *, int *, double *, int *, double *, double *, int *);

int main()
{
double iMatrixA[matARowSize*matAColSize]; // -- Input matrix 1 {m x n}
double iMatrixB[matBRowSize*matBColSize]; // -- Input matrix 2 {n x k}
double iMatrixC[matARowSize*matBColSize]; // -- Output matrix {m x n * n x k = m x k}

double alpha = 1.0f;
double beta = 0.0f;

int n = 2;

iMatrixA[0] = 1;
iMatrixA[1] = 1;
iMatrixA[2] = 1;
iMatrixA[3] = 1;

iMatrixB[0] = 1;
iMatrixB[1] = 1;
iMatrixB[2] = 1;
iMatrixB[3] = 1;

//dgemm('N','N',&n,&n,&n,&alpha,iMatrixA,&n,iMatrixB,&n,&beta,iMatrixC,&n);

dgemm('N','N',&n,&n,&n,&alpha,iMatrixA,&n,iMatrixB,&n,&beta,iMatrixC,&n);

std::cin.get();
return 0;
}

最佳答案

由于未解析的引用,这是一个链接器错误。你能显示你的make文件吗?尝试通过将库名称放在末尾来更改您的 make 文件。例如
gcc <program_name> lapack.a -o exec

关于c - 如何使用lapack库解决c中矩阵乘法的链接器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13080974/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com