Hello,
I followed the installation instructions for gmm++. After installing the library, I tried to compile a simple test file with the following code:
#include "gmm/gmm.h"
int main()
{
gmm::dense_matrix<double> d(3, 3);
return 0;
}
However, I encountered the following compilation error:
$ gcc main.cpp -o test_gmm -I /home/aeart/gmm/include
In file included from D:/msys64/home/aeart/gmm/include/gmm/gmm_iter_solvers.h:100,
from D:/msys64/home/aeart/gmm/include/gmm/gmm.h:44,
from main.cpp:1:
D:/msys64/home/aeart/gmm/include/gmm/gmm_solver_Schwarz_additive.h: In function 'void gmm::mult(const AS_exact_gradient<Matrixt, MatrixBi>&, const Vector2&, Vector3&)':
D:/msys64/home/aeart/gmm/include/gmm/gmm_solver_Schwarz_additive.h:579:12: error: 'MUMPS_solve' is not a member of 'gmm' [-Wtemplate-body]
579 | gmm::MUMPS_solve(M.vMloc[i], x, w);
| ^~~~~~~~~~~
After looking into the source code, I noticed that this part of the library depends on either SuperLU or MUMPS.
Are SuperLU or MUMPS required dependencies to use gmm++? Or is it possible to use the library without them, for example, just for basic dense or sparse matrix operations?
Any clarification would be appreciated. Thanks!