I was upgrading the 9.4 and I needed to include GMSH for a project I am working on so I can use the API in my dealii code. I am getting the following error despite getting the all clear from CMAKE. How can I fix this , are there version limits on GMSH? I did notice this line
"netgen, tetgen and blas support has to be enabled in Gmsh" How does one ensure that? I do not see much in their github readme.
Some details-
On a windows system running dealii in WSL2 under debian. I have built gmsh from source and it is functional by itself, so I feel I did that part right. I have -DGMSH_DIR set to the root directory of my gmsh installation so ~/gmsh-gmsh-4.10.5 cmake settings when I install dealii
make Error
[ 75%] Linking CXX executable ../bin/step_3_mixed.debug
../lib/libdeal_II.g.so.9.4.0: error: undefined reference to 'gmsh::model::addPhysicalGroup(int, std::vector<int, std::allocator<int> > const&, int)'
../lib/libdeal_II.g.so.9.4.0: error: undefined reference to 'gmsh::model::mesh::removeDuplicateNodes()'
../lib/libdeal_II.g.so.9.4.0: error: undefined reference to 'gmsh::initialize(int, char**, bool)'
collect2: error: ld returned 1 exit status
make[2]: *** [examples/CMakeFiles/step_3_mixed.debug.dir/build.make:292: bin/step_3_mixed.debug] Error 1
make[1]: *** [CMakeFiles/Makefile2:3926: examples/CMakeFiles/step_3_mixed.debug.dir/all] Error 2
make: *** [Makefile:149: all] Error 2
# Configured Features (DEAL_II_ALLOW_BUNDLED = ON, DEAL_II_ALLOW_AUTODETECTION = ON):
# ( DEAL_II_WITH_64BIT_INDICES = OFF )
# ( DEAL_II_WITH_ADOLC = OFF )
# ( DEAL_II_WITH_ARBORX = OFF )
# DEAL_II_WITH_ARPACK set up with external dependencies
# DEAL_II_WITH_ASSIMP set up with external dependencies
# DEAL_II_WITH_BOOST set up with external dependencies
# ( DEAL_II_WITH_CGAL = OFF )
# DEAL_II_WITH_COMPLEX_VALUES = ON
# ( DEAL_II_WITH_CUDA = OFF )
# ( DEAL_II_WITH_GINKGO = OFF )
# DEAL_II_WITH_GMSH set up with external dependencies
# DEAL_II_WITH_GSL set up with external dependencies
# DEAL_II_WITH_HDF5 set up with external dependencies
# DEAL_II_WITH_KOKKOS set up with external dependencies
# DEAL_II_WITH_LAPACK set up with external dependencies
# DEAL_II_WITH_METIS set up with external dependencies
# DEAL_II_WITH_MPI set up with external dependencies
# DEAL_II_WITH_MUPARSER set up with external dependencies
# DEAL_II_WITH_OPENCASCADE set up with external dependencies
# DEAL_II_WITH_P4EST set up with external dependencies
# DEAL_II_WITH_PETSC set up with external dependencies
# DEAL_II_WITH_SCALAPACK set up with external dependencies
# DEAL_II_WITH_SLEPC set up with external dependencies
# ( DEAL_II_WITH_SUNDIALS = OFF )
# ( DEAL_II_WITH_SYMENGINE = OFF )
# DEAL_II_WITH_TBB set up with external dependencies
# DEAL_II_WITH_TRILINOS set up with external dependencies
# DEAL_II_WITH_UMFPACK set up with external dependencies
# DEAL_II_WITH_ZLIB set up with external dependencies
#
# Component configuration:
# ( DEAL_II_COMPONENT_DOCUMENTATION = OFF )
# DEAL_II_COMPONENT_EXAMPLES
# ( DEAL_II_COMPONENT_PACKAGE = OFF )
# ( DEAL_II_COMPONENT_PYTHON_BINDINGS = OFF )
#
# Detailed information (compiler flags, feature configuration) can be found in detailed.log
#
# Run $ make info to print a help message with a list of top level targets
#
###
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mjrich/dealii-9.4.0/build