llnl / llnl/smith

Configure fails to find mfem submodule, and otherwise the build fails with the mfem-4.8 package

Open
#1,490 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
245
Forks
36
Avg merge
8d 23h
Merged PRs (30d)
4

Description

With the git submodule configure error is:
```
-- Could NOT find MFEM (missing: MFEM_DIR)
CMake Error at cmake/thirdparty/FindMFEM.cmake:68 (message):
Failed to find any MFEM build configuration files in
/usr/ports/science/serac/work/smith-ad49974/mfem
Call Stack (most recent call first):
cmake/thirdparty/SetupSeracThirdParty.cmake:200 (include)
CMakeLists.txt:172 (include)
```

The build with the mfem-4.8 package fails like this:
```
In file included from /usr/ports/science/serac/work/smith-ad49974/src/serac/physics/state/finite_element_vector.cpp:7:
In file included from /usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/physics/state/finite_element_vector.hpp:26:
In file included from /usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/functional.hpp:28:
In file included from /usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tensor.hpp:2112:
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:742:31: error: expected ';' after expression
742 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ^
| ;
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:742:9: error: no member named 'DenseMatrixEigensystem' in namespace 'mfem'
742 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ~~~~~~^
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:742:32: error: use of undeclared identifier 'eig_sys'
742 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ^
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:743:3: error: use of undeclared identifier 'eig_sys'
743 | eig_sys.Eval();
| ^
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:749:17: error: use of undeclared identifier 'eig_sys'
749 | output[k] = eig_sys.Eigenvalue(k);
| ^
/usr/ports/science/serac/work/smith-ad49974/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:753:72: error: use of undeclared identifier 'eig_sys'
753 | tensor phi = make_tensor([&](int i) { return eig_sys.Eigenvector(k)[i]; });
| ^
6 errors generated.
```

rev.ad49974
OS: FreeBSD 15 STABLE
clang-19

Contributor guide

Open the contributing guide

Research direction

Reproduce on FreeBSD 15 STABLE with clang-19 using both the MFEM submodule and the mfem-4.8 package. Inspect cmake/thirdparty/FindMFEM.cmake, cmake/thirdparty/SetupSeracThirdParty.cmake, CMakeLists.txt, and tuple_tensor_dual_functions.hpp around line 742; done means configuration finds MFEM and the package build no longer reports the shown missing symbol.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.