Dear Getfem users,
i have several questions regarding completely different issues:
1) I am struggling to install the parallel version of Getfem (on OS X Yosemite).
After the first steps without visible issues/errors (./configure, make, make install), when i try to compile one of the test cases, i have the following errors
Undefined symbols for architecture x86_64:
"_MPI_Allreduce", referenced from:
double getfem::asm_L2_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
double getfem::asm_H1_semi_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
"_MPI_Comm_rank", referenced from:
elastostatic_problem::compute_error(std::vector<double, std::allocator<double> >&) in elastostatic.o
_main in elastostatic.o
"_MPI_Finalize", referenced from:
_main in elastostatic.o
"_MPI_Init", referenced from:
_main in elastostatic.o
"_MPI_Wtime", referenced from:
elastostatic_problem::init() in elastostatic.o
elastostatic_problem::solve(std::vector<double, std::allocator<double> >&) in elastostatic.o
_main in elastostatic.o
"_ompi_mpi_comm_world", referenced from:
double getfem::asm_L2_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
double getfem::asm_H1_semi_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
elastostatic_problem::compute_error(std::vector<double, std::allocator<double> >&) in elastostatic.o
_main in elastostatic.o
"_ompi_mpi_double", referenced from:
double getfem::asm_L2_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
double getfem::asm_H1_semi_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
"_ompi_mpi_op_sum", referenced from:
double getfem::asm_L2_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
double getfem::asm_H1_semi_norm_sqr<std::vector<double, std::allocator<double> >, double>(getfem::mesh_im const&, getfem::mesh_fem const&, std::vector<double, std::allocator<double> > const&, getfem::mesh_region const&, double) in elastostatic.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make: *** [elastostatic] Error 1
Here is the options i used for configure
./configure CXX=g++-7 MPICXX=mpic++ CXXFLAGS=-g --with-mumps-include-dir=/usr/local/Cellar/mumps/5.0.2_1/include/ --with-blas=/usr/local/opt/openblas/include LDFLAGS='-L/usr/local/Cellar/mumps/5.0.2_1/lib -L/usr/local/lib -L/usr/local/opt/openblas/lib -L/usr/local/Cellar/open-mpi/2.1.1/lib/' --enable-paralevel=2 --enable-qhull --enable-python=no --enable-mumps --enable-boost --enable-shared --with-optimization=-O2 --with-pic
If it is not enough, please find enclosed the config.log.
2) I wanted to consider a matrix in a problem, therefore i used