-
Notifications
You must be signed in to change notification settings - Fork 435
Description
A build on LC dane failed with errors:
4659 Target CMakeFiles/shoc.dir/eti/shoc_assumed_pdf.cpp.o built in 7.821014 seconds
4660 /p/lustre2/zhang73/GitTmp/wprrmxx/WPRRMxx_250901_ctp_qmr/components/eamxx/src/physics/ml_correction/eamxx_ml_correction_process_interface.cpp(77): error: namespace "ekat" has no member "get_enabled_fpes"
eamxx_ml_correction_process_interface.cpp(78): error: namespace "ekat" has no member "disable_all_fpes"
eamxx_ml_correction_process_interface.cpp(88): error: namespace "ekat" has no member "enable_fpes"
Seems that two refactor ekat PRs (Refactor EKAT into packages E3SM-Project/EKAT#370, update EKAT submodule and adapt EAMxx #7362) introduced changes related to ekat fpe functions (enable_fpes, disable_fpes, get_enabled_fpes, disable_all_fpes). However, these two ml_correction .cpp files haven't included ekat_fpe.hpp:
https://github.com/E3SM-Project/E3SM/blob/master/components/eamxx/src/physics/ml_correction/eamxx_ml_correction_process_interface.cpp
https://github.com/E3SM-Project/E3SM/blob/master/components/eamxx/tests/single-process/ml_correction/ml_correction_standalone.cpp
- this issue appeared on dane because
SCREAM_ENABLE_ML_CORRECTION
is ON by default in dane-intel.cmake - adding
#include <ekat_fpe.hpp>
to these two ml_correction cpps fixes the build error