Closed Thomas-Ulrich closed 7 months ago
I'm compiling: https://github.com/SeisSol/Meshing/tree/master/evaluate_material and get:
base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material$ module load seissol/master-gcc-10.2.1-o4-elas-dunav-single-cuda-jgdi7pe Loading seissol/master-gcc-10.2.1-o4-elas-dunav-single-cuda-jgdi7pe Loading requirement: gcc-runtime/10.2.1-gcc-10.2.1-btvaq7h libiconv/1.17-gcc-10.2.1-tj3mact xz/5.4.1-gcc-10.2.1-je3g3bm zlib/1.2.13-gcc-10.2.1-hgiqbwx libxml2/2.10.3-gcc-10.2.1-cvd4pfq cuda/11.8.0-gcc-10.2.1-cuda-dghkzft libpciaccess/0.17-gcc-10.2.1-upquxl3 ncurses/6.4-gcc-10.2.1-jd4jdwb hwloc/2.9.1-gcc-10.2.1-cuda-6jfcsgm openssl/3.1.1-gcc-10.2.1-zfspsim libevent/2.1.12-gcc-10.2.1-v6gkadi numactl/2.0.14-gcc-10.2.1-2kffipu bzip2/1.0.8-gcc-10.2.1-gj7wzax pigz/2.7-gcc-10.2.1-mzracis zstd/1.5.5-gcc-10.2.1-qf4aum6 tar/1.34-gcc-10.2.1-x6zlxxi gettext/0.21.1-gcc-10.2.1-5lsohwi krb5/1.20.1-gcc-10.2.1-ovzxc2i libedit/3.1-20210216-gcc-10.2.1-42k6nfz libxcrypt/4.4.35-gcc-10.2.1-bnqjrgt openssh/9.3p1-gcc-10.2.1-uj6h5l7 pmix/5.0.1-gcc-10.2.1-cuda-ibuqdvw openmpi/5.0.1-gcc-10.2.1-cuda-2pxqnq2 pkgconf/1.9.5-gcc-10.2.1-pdxbism hdf5/1.12.2-gcc-10.2.1-cuda-h743wqy netcdf-c/4.7.4-gcc-10.2.1-cuda-hy3eu3a asagi/1.0.1-gcc-10.2.1-cuda-qvx5cn2 impalajit/main-gcc-10.2.1-ixfpvie nghttp2/1.52.0-gcc-10.2.1-otrsjvu curl/8.1.2-gcc-10.2.1-26tnsvf readline/8.2-gcc-10.2.1-s4whhye unzip/6.0-gcc-10.2.1-tpx5wh6 lua/5.3.2-gcc-10.2.1-kzlebei yaml-cpp/0.6.2-gcc-10.2.1-tqiwsxo easi/1.2.0-gcc-10.2.1-cuda-sqvnpcd eigen/3.4.0-gcc-10.2.1-qsnn4hu boost/1.69.0-gcc-10.2.1-5vpafqp binutils/2.40-gcc-10.2.1-djz2mwn libffi/3.4.4-gcc-10.2.1-jqx3e5u pcre2/10.42-gcc-10.2.1-peyxgyw swig/4.1.1-gcc-10.2.1-xpioqtx llvm/17.0.4-gcc-10.2.1-cuda-t2bofou python/3.9.2-gcc-10.2.1-eev7lqb hipsycl/develop-gcc-10.2.1-cuda-qgx3pnb memkind/1.13.0-gcc-10.2.1-2jchphp metis/5.1.0-gcc-10.2.1-xvvmsix parmetis/4.0.3-gcc-10.2.1-cuda-ebnighk (base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material$ module list Currently Loaded Modulefiles: 1) paraview/5.11.1 14) bzip2/1.0.8-gcc-10.2.1-gj7wzax 27) netcdf-c/4.7.4-gcc-10.2.1-cuda-hy3eu3a 40) libffi/3.4.4-gcc-10.2.1-jqx3e5u 2) gcc-runtime/10.2.1-gcc-10.2.1-btvaq7h 15) pigz/2.7-gcc-10.2.1-mzracis 28) asagi/1.0.1-gcc-10.2.1-cuda-qvx5cn2 41) pcre2/10.42-gcc-10.2.1-peyxgyw 3) libiconv/1.17-gcc-10.2.1-tj3mact 16) zstd/1.5.5-gcc-10.2.1-qf4aum6 29) impalajit/main-gcc-10.2.1-ixfpvie 42) swig/4.1.1-gcc-10.2.1-xpioqtx 4) xz/5.4.1-gcc-10.2.1-je3g3bm 17) tar/1.34-gcc-10.2.1-x6zlxxi 30) nghttp2/1.52.0-gcc-10.2.1-otrsjvu 43) llvm/17.0.4-gcc-10.2.1-cuda-t2bofou 5) zlib/1.2.13-gcc-10.2.1-hgiqbwx 18) gettext/0.21.1-gcc-10.2.1-5lsohwi 31) curl/8.1.2-gcc-10.2.1-26tnsvf 44) python/3.9.2-gcc-10.2.1-eev7lqb 6) libxml2/2.10.3-gcc-10.2.1-cvd4pfq 19) krb5/1.20.1-gcc-10.2.1-ovzxc2i 32) readline/8.2-gcc-10.2.1-s4whhye 45) hipsycl/develop-gcc-10.2.1-cuda-qgx3pnb 7) cuda/11.8.0-gcc-10.2.1-cuda-dghkzft 20) libedit/3.1-20210216-gcc-10.2.1-42k6nfz 33) unzip/6.0-gcc-10.2.1-tpx5wh6 46) memkind/1.13.0-gcc-10.2.1-2jchphp 8) libpciaccess/0.17-gcc-10.2.1-upquxl3 21) libxcrypt/4.4.35-gcc-10.2.1-bnqjrgt 34) lua/5.3.2-gcc-10.2.1-kzlebei 47) metis/5.1.0-gcc-10.2.1-xvvmsix 9) ncurses/6.4-gcc-10.2.1-jd4jdwb 22) openssh/9.3p1-gcc-10.2.1-uj6h5l7 35) yaml-cpp/0.6.2-gcc-10.2.1-tqiwsxo 48) parmetis/4.0.3-gcc-10.2.1-cuda-ebnighk 10) hwloc/2.9.1-gcc-10.2.1-cuda-6jfcsgm 23) pmix/5.0.1-gcc-10.2.1-cuda-ibuqdvw 36) easi/1.2.0-gcc-10.2.1-cuda-sqvnpcd 49) seissol/master-gcc-10.2.1-o4-elas-dunav-single-cuda-jgdi7pe 11) openssl/3.1.1-gcc-10.2.1-zfspsim 24) openmpi/5.0.1-gcc-10.2.1-cuda-2pxqnq2 37) eigen/3.4.0-gcc-10.2.1-qsnn4hu 12) libevent/2.1.12-gcc-10.2.1-v6gkadi 25) pkgconf/1.9.5-gcc-10.2.1-pdxbism 38) boost/1.69.0-gcc-10.2.1-5vpafqp 13) numactl/2.0.14-gcc-10.2.1-2kffipu 26) hdf5/1.12.2-gcc-10.2.1-cuda-h743wqy 39) binutils/2.40-gcc-10.2.1-djz2mwn Key: auto-loaded default-version (base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material$ mkdir build2 (base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material$ cd build2/ (base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material/build2$ cmake .. -- The C compiler identification is Clang 17.0.4 -- The CXX compiler identification is Clang 17.0.4 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/llvm-17.0.4-t2bofou4fjhobbqytlnm425dzrq2ketb/bin/clang - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/llvm-17.0.4-t2bofou4fjhobbqytlnm425dzrq2ketb/bin/clang++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found MPI_C: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/openmpi-5.0.1-2pxqnq2z2z5icvsx7tx4pgo5tdfm3lcq/lib/libmpi.so (found version "3.1") -- Found MPI_CXX: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/openmpi-5.0.1-2pxqnq2z2z5icvsx7tx4pgo5tdfm3lcq/lib/libmpi.so (found version "3.1") -- Found MPI: TRUE (found version "3.1") -- Found HDF5: hdf5-shared (found version "1.12.2") found components: C HL -- Found OpenMP_C: -fopenmp=libomp -- Found OpenMP_CXX: -fopenmp=libomp -- Found OpenMP: TRUE -- Found PkgConfig: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/pkgconf-1.9.5-pdxbismnbvhvipca6e2n4jmvlikmwlkp/bin/pkg-config (found version "1.9.5") -- Checking for module 'asagi' -- Found asagi, version 1.0 -- Checking for module 'netcdf' -- Found netcdf, version 4.7.4 -- Configuring done -- Generating done -- Build files have been written to: /home/ulrich/SeisSol/Meshing/evaluate_material/build2 (base) ulrich@heisenbug:~/SeisSol/Meshing/evaluate_material/build2$ make [ 20%] Building CXX object CMakeFiles/evaluate_easi.dir/src/main.cpp.o [ 40%] Building CXX object CMakeFiles/evaluate_easi.dir/src/mesh.cpp.o In file included from /home/ulrich/SeisSol/Meshing/evaluate_material/src/mesh.cpp:3: /home/ulrich/SeisSol/Meshing/evaluate_material/submodules/PUML/PUML.h:54:3: warning: explicitly defaulted default constructor is implicitly deleted [-Wdefaulted-function-deleted] 54 | Distributor() = default; | ^ /home/ulrich/SeisSol/Meshing/evaluate_material/submodules/PUML/PUML.h:116:23: note: default constructor of 'Distributor' is implicitly deleted because field 'numEntities' of const-qualified type 'const unsigned long' would not be initialized 116 | const unsigned long numEntities; | ^ /home/ulrich/SeisSol/Meshing/evaluate_material/submodules/PUML/PUML.h:54:19: note: replace 'default' with 'delete' 54 | Distributor() = default; | ^~~~~~~ | delete 1 warning generated. [ 60%] Building CXX object CMakeFiles/evaluate_easi.dir/src/parameterDB.cpp.o In file included from /home/ulrich/SeisSol/Meshing/evaluate_material/src/parameterDB.cpp:6: In file included from /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/easi-1.2.0-sqvnpcdhqpfgzjrmt6yd4juehuy6f3xh/include/easi/YAMLParser.h:4: /import/exception-dump/ulrich/myLibs/spack-packages/linux-debian11-zen2/gcc-10.2.1/easi-1.2.0-sqvnpcdhqpfgzjrmt6yd4juehuy6f3xh/include/easi/parser/YAMLAbstractParser.h:6:10: fatal error: 'yaml-cpp/yaml.h' file not found 6 | #include <yaml-cpp/yaml.h> | ^~~~~~~~~~~~~~~~~ 1 error generated. make[2]: *** [CMakeFiles/evaluate_easi.dir/build.make:104: CMakeFiles/evaluate_easi.dir/src/parameterDB.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/evaluate_easi.dir/all] Error 2 make: *** [Makefile:91: all] Error 2
(Note that previously, there was a hardocded fix in seissol-env to add the dependencies of easi to the seissol-env module. https://github.com/SeisSol/seissol-spack-aid/blob/e83e94a95369ec4660fd1fdaf910ca56b1dfbc7b/spack/packages/seissol-env/package.py#L89 But this should not be necessary )
I would think about adding to the CMakelist.txt ;${YAML_CPP_INCLUDE_DIRS} here, what do you think?
target_include_directories(easi PUBLIC $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include;${YAML_CPP_INCLUDE_DIRS}> PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src )
or maybe target_include_directories(easi PRIVATE ${YAML_CPP_INCLUDE_DIRS}) is missing?
target_include_directories(easi PRIVATE ${YAML_CPP_INCLUDE_DIRS})
I'm compiling: https://github.com/SeisSol/Meshing/tree/master/evaluate_material and get:
(Note that previously, there was a hardocded fix in seissol-env to add the dependencies of easi to the seissol-env module. https://github.com/SeisSol/seissol-spack-aid/blob/e83e94a95369ec4660fd1fdaf910ca56b1dfbc7b/spack/packages/seissol-env/package.py#L89 But this should not be necessary )
I would think about adding to the CMakelist.txt ;${YAML_CPP_INCLUDE_DIRS} here, what do you think?