Closed jayeshkrishna closed 1 year ago
Suggestion from @tkurc ,
Set ADIOS2_USE_EXTERNAL_YAMLCPP to ON when configuring with cmake. It may solve the compilation issue.
Thirdparty/CMakeLists.txt
option(ADIOS2_USE_EXTERNAL_YAMLCPP
"Use an externally supplied yaml-cpp library" "${ADIOS2_USE_EXTERNAL_DEPENDENCIES}")
For now, @whannah1 has been able to build EKAT without YAML (the YAML support in EKAT is not required for E3SM runs) and is a workaround for this issue. Also, the suggestion from @tkurc to use the YAML installs on the system (as an external library) also works for SCORPIO. Unfortunately EKAT at this time does not support YAML as a TPL. This issue can be closed for now, but the ultimate solution is to move YAML as a TPL that is available on all E3SM machines and ensure that all components (EKAT, SCORPIO/ADIOS) use it (instead of building their own version of YAML).
@whannah1 found that his builds using EKAT (while merging a development branch with EKAT to E3SM master) were failing due to conflict between YAML modules in EKAT and ADIOS. The build error is shown below,
The workaround was to disable ADIOS in SCORPIO configure step