Open JoshuaLau0220 opened 1 year ago
I'm trying to compile a program that uses xtensor-blas, when I encounter a linker error. The error message is
... testTensor.o: In function `int cxxlapack::getrf<int>(int, int, double*, int, int*)': /usr/local/include/xflens/cxxlapack/interface/getrf.tcc:76: undefined reference to `dgetrf_' collect2: error: ld returned 1 exit status ...
where testTensor.o is calling
auto d = xt::linalg::det(a);
. I'm using lapack-3.10.1 and blas-3.10.0, and I have supplied the-lblas -llapack -DHAVE_CBLAS=1
tag to g++, as suggested by the documention. I've also tried using the alternative tag-DXTENSOR_USE_FLENS_BLAS
, which results in the same error message.Any help or suggestion is hugely appreciated. Thanks!
Do u resolve this problem? I have the same one.
@willamhou In my case (I'm on Ubuntu), I have to also supply -lgfortran
after -lblas -llapack
as these two libraries depends on it.
But when switching to OSX, it seems like -lgfortran
should NOT be supplied.
@willamhou In my case (I'm on Ubuntu), I have to also supply
-lgfortran
after-lblas -llapack
as these two libraries depends on it. But when switching to OSX, it seems like-lgfortran
should NOT be supplied.
Thanks u for your reply. I solve this problem, add "-lcblas -lblas -llapack `-lgfortran" to complie the binary.
I'm trying to compile a program that uses xtensor-blas, when I encounter a linker error. The error message is
where testTensor.o is calling
auto d = xt::linalg::det(a);
. I'm using lapack-3.10.1 and blas-3.10.0, and I have supplied the-lblas -llapack -DHAVE_CBLAS=1
tag to g++, as suggested by the documention. I've also tried using the alternative tag-DXTENSOR_USE_FLENS_BLAS
, which results in the same error message.Any help or suggestion is hugely appreciated. Thanks!