NOAA-EMC / GDASApp

Global Data Assimilation System Application
GNU Lesser General Public License v2.1
14 stars 28 forks source link

GDASApp does not build on WCOSS2 acorn with spack-stack/1.5.1 #841

Open GeorgeVandenberghe-NOAA opened 6 months ago

GeorgeVandenberghe-NOAA commented 6 months ago

The following setup to compile gdasapp fails on acorn

module use /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/modulefiles/Core module load stack-intel/2022.0.2.262 stack-cray-mpich/8.1.9 module load jedi-base-env/1.0.0

then

cd $workflow_root/sorc/gdas.cd

rm -rf build ; mkdir build ; cd build cmake -DMPIEXEC_EXECUTABLE=/apps/slurm/default/bin/srun -DMPIEXEC_NUMPROC_FLAG=-n -DBUILD_GSIBEC=ON -DCLONE_JCSDADATA=NO -DWORKFLOW_TESTS=ON .. time make -j 8 VERBOSE=1

The failure is

[ 97%] Built target test_soca_convertstate_soca2cice.x make -f gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/build.make gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/depend make[2]: Entering directory '/lfs/h1/emc/ptmp/gwv/workflow/w0106/sorc/gdas.cd/build' cd /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build && /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/cmake-3.23.1-hghxkax/bin/cmake -E cmake_depends "Unix Makefiles" /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gdas-utils/soca /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/gdas-utils/soca /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/DependInfo.cmake --color= Dependencies file "gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/gdas_incr_handler.cc.o.d" is newer than depends file "/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/compiler_depend.internal". Consolidate compiler generated dependencies of target gdas_incr_handler.x make[2]: Leaving directory '/lfs/h1/emc/ptmp/gwv/workflow/w0106/sorc/gdas.cd/build' make -f gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/build.make gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/build make[2]: Entering directory '/lfs/h1/emc/ptmp/gwv/workflow/w0106/sorc/gdas.cd/build' [ 97%] Building CXX object gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/gdas_incr_handler.cc.o cd /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/gdas-utils/soca && /opt/cray/pe/craype/2.7.13/bin/CC -DGSW_FOUND -DH5_BUILT_AS_DYNAMIC_LIB -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200809L -Dioda_SHARED=1 -Dioda_fortran_SHARED=1 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/oops/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/oops/src -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/oops/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/soca/src/soca/.. -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/soca/module -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/fms/module -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/fms/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/gsw/module -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/mom6/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/mom6/config_src/memory/dynamic_nonsymmetric -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/mom6/src/framework -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/saber/src/saber/.. -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/saber/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gsibec/src/gsibec/.. -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/gsibec/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/vader/src -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/ioda/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/ioda/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/fortran -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/ioda/src/engines/ioda/fortran -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/ioda/src/engines/ioda/config -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ufo/src -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/ufo/module -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/crtm/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/module/icepack/Intel/2021.6.0.20220226 -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/icepack/configuration -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/icepack/columnphysics -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/netcdf-cxx4-4.3.1-t2m6f4y/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/netcdf-fortran-4.6.0-e4gh24r/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/netcdf-c-4.9.2-agt6ew3/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/module/fckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/include/fckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/module/atlas -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/include/atlas -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/geometry -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/linalg -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/maths -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/mpi -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/option -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/include/atlas_io -I/apps/ops/prod/libs/intel/19.1.3.304/sp/2.3.3/include_d -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/gsl-lite-0.37.0-tgxiry7/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/udunits-2.2.28-ofptt3d/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/odc-1.4.6-z4ps66c/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/odc-1.4.6-z4ps66c/include/odc -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/sql -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/boost-1.78.0-2nmo377/include -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eigen-3.4.0-s5vmmkg/include/eigen3 -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/hdf5-1.14.0-w5vslqn/include -O2 -g -DNDEBUG -fPIE -qopenmp -std=c++17 -MD -MT gdas-utils/soca/CMakeFiles/gdas_incr_handler.x.dir/gdas_incr_handler.cc.o -MF CMakeFiles/gdas_incr_handler.x.dir/gdas_incr_handler.cc.o.d -o CMakeFiles/gdas_incr_handler.x.dir/gdas_incr_handler.cc.o -c /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gdas-utils/soca/gdas_incr_handler.cc In file included from /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gdas-utils/soca/gdas_incr_handler.cc(1): /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gdas-utils/soca/gdas_incr_handler.h(3): catastrophic error: cannot open source file "filesystem"

include

                   ^

compilation aborted for /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/gdas-utils/soca/gdas_incr_handler.cc (code

This works on jet, gaeaC5, hercules, orion, and hera only failing on Acorn. It cannot be attempted on WCOSS2 of course because of lack of supporting libraries there

guillaumevernieres commented 6 months ago

Thanks for testing @GeorgeVandenberghe-NOAA . @CoryMartin-NOAA reported the issue (GDASApp/issues/812) a while back too. I'll try to work on a fix this week.

guillaumevernieres commented 6 months ago

It's failing because it's not finding filesystem, which is part of c++17. Could that be an indication that the standard library and compiler were not installed properly?

GeorgeVandenberghe-NOAA commented 6 months ago

I found a gcc-mixed module that does not unload intel and I am trying that. Default gcc is 7.x and the mixed one loads 11.2

Otherwise I will have to report it to admins and wait for a correction.

On Tue, Jan 9, 2024 at 8:01 PM Guillaume Vernieres @.***> wrote:

It's failing because it's not finding filesystem, which is part of c++17. Could that be an indication that the standard library and compiler were not installed properly?

— Reply to this email directly, view it on GitHub https://github.com/NOAA-EMC/GDASApp/issues/841#issuecomment-1883697440, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANDS4FTPTEPWNRDU3S7R2W3YNWOZPAVCNFSM6AAAAABBTSTSTWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBTGY4TONBUGA . You are receiving this because you were mentioned.Message ID: @.***>

--

George W Vandenberghe

Lynker Technologies at NOAA/NWS/NCEP/EMC

5830 University Research Ct., Rm. 2141

College Park, MD 20740

@.***

301-683-3769(work) 3017751547(cell)

GeorgeVandenberghe-NOAA commented 6 months ago

Different error when I load gcc-mixed

cd /u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/build/ioda/src/engines/ioda && /opt/cray/pe/craype/2.7.13/bin/CC -DH5_BUILT_AS_DYNAMIC_LIB -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200809L -Dioda_EXPORTING -Dioda_SHARED=1 -Dioda_engines_EXPORTS -I/u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/ioda/src/engines/ioda/private -I/u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/build/ioda/src/engines/ioda/config -I/u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/ioda/src/engines/ioda/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/build/oops/include -I/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/oops/src -I/u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/build/module/oops/Intel/2021.6.0.20220226 -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/gsl-lite-0.37.0-tgxiry7/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/udunits-2.2.28-ofptt3d/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/odc-1.4.6-z4ps66c/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/odc-1.4.6-z4ps66c/include/odc -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eckit-1.24.4-lk2oupj/include/eckit/sql -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/netcdf-fortran-4.6.0-e4gh24r/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/netcdf-c-4.9.2-agt6ew3/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/module/fckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/fckit-0.11.0-7cqugu5/include/fckit -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/include -I/lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/ecmwf-atlas-0.35.0-wp4cu3i/module/atlas -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/hdf5-1.14.0-w5vslqn/include -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/boost-1.78.0-2nmo377/include -isystem /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eigen-3.4.0-s5vmmkg/include/eigen3 -g -traceback -g -traceback -O2 -DNDEBUG -fPIC -qopenmp -std=c++17 -MD -MT ioda/src/engines/ioda/CMakeFiles/ioda_engines.dir/src/ioda/Attribute.cpp.o -MF CMakeFiles/ioda_engines.dir/src/ioda/Attribute.cpp.o.d -o CMakeFiles/ioda_engines.dir/src/ioda/Attribute.cpp.o -c /u/george.vandenberghe/w/workflow/w0106/sorc/ gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp I

*n file included from /opt/cray/pe/gcc/12.1.0/snos/include/g++/random(49), from /lfs/h1/emc/nceplibs/noscrub/spack-stack/spack-stack-1.5.1/envs/unified-env/install/intel/2022.0.2.262/eigen-3.4.0-s5vmmkg/include/eigen3/unsupported/Eigen/CXX11/Tensor(41), from /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/include/ioda/Misc/Eigen_Compat.h(27) http://gdas.cd/ioda/src/engines/ioda/include/ioda/Misc/Eigen_Compat.h(27), from /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/include/ioda/Attributes/Attribute.h(26) http://gdas.cd/ioda/src/engines/ioda/include/ioda/Attributes/Attribute.h(26), from /u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp(7) http://gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp(7):/opt/cray/pe/gcc/12.1.0/snos/include/g++/bits/random.h(104): error: expected a declaration { extension using type = unsigned __int128; }; ^/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp(131) http://gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp(131): warning

2196: routine is both "inline" and "noinline"compilation aborted for

/u/george.vandenberghe/w/workflow/w0106/sorc/gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp http://gdas.cd/ioda/src/engines/ioda/src/ioda/Attribute.cpp (code 2)make[2]: [ioda/src/engines/ioda/CMakeFiles/ioda_engines.dir/build.make:76: ioda/src/engines/ioda/CMakeFiles/ioda_engines.dir/src/ioda/Attribute.cpp.o] Error 2make[2]: Leaving directory '/lfs/h1/emc/ptmp/gwv/workflow/w0106/sorc/gdas.cd/build http://gdas.cd/build'make[1]: [CMakeFiles/Makefile2:15554: ioda/src/engines/ioda/CMakeFiles/ioda_engines.dir/all] Error 2* make[1]: Leaving directory '/lfs/h1/emc/ptmp/gwv/workflow/w0106/sorc/ gdas.cd/build' make: *** [Makefile:166: all] Error 2

On Tue, Jan 9, 2024 at 8:01 PM Guillaume Vernieres @.***> wrote:

It's failing because it's not finding filesystem, which is part of c++17. Could that be an indication that the standard library and compiler were not installed properly?

— Reply to this email directly, view it on GitHub https://github.com/NOAA-EMC/GDASApp/issues/841#issuecomment-1883697440, or unsubscribe https://github.com/notifications/unsubscribe-auth/ANDS4FTPTEPWNRDU3S7R2W3YNWOZPAVCNFSM6AAAAABBTSTSTWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBTGY4TONBUGA . You are receiving this because you were mentioned.Message ID: @.***>

--

George W Vandenberghe

Lynker Technologies at NOAA/NWS/NCEP/EMC

5830 University Research Ct., Rm. 2141

College Park, MD 20740

@.***

301-683-3769(work) 3017751547(cell)