This flag is already in use, see https://salsa.debian.org/science-team/gmsh/-/ blob/master/debian/rules#L34
Hello everyone, the ENABLE_SYSTEM_CONTRIB=1 seems not to be sufficient. The build log shows this line: -- Found Eigen With this include given to c++: -I/home/benutzer/source/libgmsh4/try2/gmsh-4.7.1+ds1/contrib/eigen But in CMakeLists.txt we find these lines: if(ENABLE_SYSTEM_CONTRIB) find_path(EIGEN_INC "Eigen/Dense" HINTS eigen3) if(EIGEN_INC) include_directories(${EIGEN_INC}) set_config_option(HAVE_EIGEN "Eigen[system]") endif() endif() if(NOT HAVE_EIGEN) include_directories(contrib/eigen) set_config_option(HAVE_EIGEN "Eigen") endif() Therefore it seems if it is not found in the system and therefore it falls back to contrib. Adding following to debian/rules: -DEIGEN_INC:STRING="/usr/include/eigen3" Would show this with an attempt to dpkg-buildpackage: -- Found Eigen[system] With this include given to c++: -I/usr/include/eigen3 If its not desired to give the path directly maybe somehow retrieved by: $ pkg-config --cflags eigen3 -I/usr/include/eigen3 But I built a package with that change, but the error remained. So I rebuilt also dolfinx and saw that it gives to c++ this parameter: "-DEIGEN_MAX_ALIGN_BYTES=32" This define might change EIGEN_DEFAULT_ALIGN_BYTES, and this controls how allocation is done inside aligned_malloc/aligned_free. Shouldn't either both have to override the default here or both stay to the default? Kind regards, Bernhard