dslavchev@dslavchev-aspire:~/NuclearTesting/software/STRUMPACK-6.3.0$ ./dslavche_build.sh -- The CXX compiler identification is GNU 9.3.0 -- The C compiler identification is GNU 9.3.0 -- The Fortran compiler identification is GNU 9.3.0 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/mpiCC - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/mpicc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting Fortran compiler ABI info -- Detecting Fortran compiler ABI info - done -- Check for working Fortran compiler: /usr/bin/mpif90 - skipped -- Detecting Fortran/C Interface -- Detecting Fortran/C Interface - Found GLOBAL and MODULE mangling -- Verifying Fortran/CXX Compiler Compatibility -- Verifying Fortran/CXX Compiler Compatibility - Success -- Found MPI_C: /usr/bin/mpicc (found version "3.1") -- Found MPI_CXX: /usr/bin/mpiCC (found version "3.1") -- Found MPI_Fortran: /usr/bin/mpif90 (found version "3.1") -- Found MPI: TRUE (found version "3.1") -- Disabling MAGMA, it requires CUDA to be enabled. -- Found OpenMP_C: -fopenmp (found version "4.5") -- Found OpenMP_CXX: -fopenmp (found version "4.5") -- Found OpenMP_Fortran: -fopenmp (found version "4.5") -- Found OpenMP: TRUE (found version "4.5") -- Support for OpenMP task depend/priority: TRUE -- Support for OpenMP taskloop: TRUE HIP_ROOT_DIR not found or specified -- Could NOT find HIP (missing: HIP_ROOT_DIR HIP_HIPCC_EXECUTABLE HIP_HIPCONFIG_EXECUTABLE HIP_PLATFORM HIP_COMPILER HIP_RUNTIME) CMake Warning at CMakeLists.txt:135 (message): HIP compiler not found, proceeding without HIP support. -- Looking for Fortran sgemm -- Looking for Fortran sgemm - not found -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Looking for Fortran sgemm -- Looking for Fortran sgemm - found -- Found BLAS: /usr/lib/x86_64-linux-gnu/libmkl_gf_lp64.so;/usr/lib/x86_64-linux-gnu/libmkl_gnu_thread.so;/usr/lib/x86_64-linux-gnu/libmkl_core.so;/usr/lib/gcc/x86_64-linux-gnu/9/libgomp.so;-lm;-ldl -- Looking for Fortran cheev -- Looking for Fortran cheev - found -- Found LAPACK: /usr/lib/x86_64-linux-gnu/libmkl_gf_lp64.so;/usr/lib/x86_64-linux-gnu/libmkl_gnu_thread.so;/usr/lib/x86_64-linux-gnu/libmkl_core.so;/usr/lib/gcc/x86_64-linux-gnu/9/libgomp.so;-lm;-ldl;-lm;-ldl -- Performing Test STRUMPACK_USE_GETOPT -- Performing Test STRUMPACK_USE_GETOPT - Success -- Using ScaLAPACK from TPL_SCALAPACK_LIBRARIES (/lib/intel64/libmkl_scalapack_lp64.a;-Wl,--start-group /lib/intel64/libmkl_intel_lp64.a /lib/intel64/libmkl_gnu_thread.a /lib/intel64/libmkl_core.a /lib/intel64/libmkl_blacs_openmpi_lp64.a -Wl,--end-group;-lgomp;-lpthread;-lm;-ldl) -- Found METIS: /home/dslavchev/.local/lib/libmetis.a -- Found SCOTCH: /home/dslavchev/.local/lib/libscotch.a;/home/dslavchev/.local/lib/libscotcherr.a;/home/dslavchev/.local/lib/libscotcherrexit.a (found version "7.0.1") -- Scotch was compiled with pthread support, looking for pthreads. -- Found PTSCOTCH: /home/dslavchev/.local/lib/libptscotch.a;/home/dslavchev/.local/lib/libptscotcherr.a;/home/dslavchev/.local/lib/libptscotcherrexit.a (found version "7.0.1") -- Found ParMETIS: /home/dslavchev/.local/lib/libparmetis.a -- Performing Test COMPILER_SUPPORTS_NOOVERLOAD_WARNING -- Performing Test COMPILER_SUPPORTS_NOOVERLOAD_WARNING - Success -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Configuring done -- Generating done -- Build files have been written to: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/build This machine was not recognized. Open this file and modify the CMake command. Running CMake ... -- Disabling MAGMA, it requires CUDA to be enabled. -- Support for OpenMP task depend/priority: TRUE -- Support for OpenMP taskloop: TRUE HIP_ROOT_DIR not found or specified -- Could NOT find HIP (missing: HIP_ROOT_DIR HIP_HIPCC_EXECUTABLE HIP_HIPCONFIG_EXECUTABLE HIP_PLATFORM HIP_COMPILER HIP_RUNTIME) CMake Warning at CMakeLists.txt:135 (message): HIP compiler not found, proceeding without HIP support. -- Using ScaLAPACK from TPL_SCALAPACK_LIBRARIES (/lib/intel64/libmkl_scalapack_lp64.a;-Wl,--start-group /lib/intel64/libmkl_intel_lp64.a /lib/intel64/libmkl_gnu_thread.a /lib/intel64/libmkl_core.a /lib/intel64/libmkl_blacs_openmpi_lp64.a -Wl,--end-group;-lgomp;-lpthread;-lm;-ldl) -- Scotch was compiled with pthread support, looking for pthreads. -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Configuring done -- Generating done -- Build files have been written to: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/build Scanning dependencies of target strumpack [ 0%] Building Fortran object CMakeFiles/strumpack.dir/src/fortran/strumpack.f90.o [ 0%] Building Fortran object CMakeFiles/strumpack.dir/src/structured/fortran/strumpack_dense.f90.o [ 1%] Building CXX object CMakeFiles/strumpack.dir/src/StrumpackOptions.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/SparseSolver.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/StrumpackParameters.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/SparseSolverMixedPrecision.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/SparseSolverBase.cpp.o [ 3%] Building CXX object CMakeFiles/strumpack.dir/src/StrumpackSparseSolverC.cpp.o [ 3%] Building CXX object CMakeFiles/strumpack.dir/src/SparseSolverMPIDist.cpp.o [ 5%] Building CXX object CMakeFiles/strumpack.dir/src/SparseSolverMixedPrecisionMPIDist.cpp.o [ 5%] Building CXX object CMakeFiles/strumpack.dir/src/misc/TaskTimer.cpp.o [ 6%] Building CXX object CMakeFiles/strumpack.dir/src/misc/Triplet.cpp.o [ 6%] Building C object CMakeFiles/strumpack.dir/src/sparse/strumpack_mc64ad.c.o [ 7%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/CompressedSparseMatrix.cpp.o [ 7%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/CSRGraph.cpp.o [ 9%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/CSRMatrix.cpp.o [ 9%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/EliminationTree.cpp.o [ 10%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/SeparatorTree.cpp.o In file included from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:35, from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:34: /home/dslavchev/.local/include/metis.h:93:9: error: ‘SCOTCH_Num’ does not name a type 93 | typedef SCOTCH_Num idx_t; | ^~~~~~~~~~ In file included from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:34: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 47 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:21: error: template argument 1 is invalid 47 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 47 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:47: error: template argument 1 is invalid 47 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:4: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:17: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:29: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:47: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 49 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:52: error: template argument 1 is invalid 49 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:52: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, std::vector<_Tp>&, std::vector<_Tp>&, int&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:50:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 50 | idx_t n = perm.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:51:22: error: template argument 2 is invalid 51 | std::vector order(n), iorder(n); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:51:30: error: ‘n’ was not declared in this scope; did you mean ‘yn’? 51 | std::vector order(n), iorder(n); | ^ | yn /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:53:16: error: request for member ‘data’ in ‘xadj’, which is of non-class type ‘int’ 53 | (n, xadj.data(), adjncy.data(), vwgt, seps, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:53:31: error: request for member ‘data’ in ‘adjncy’, which is of non-class type ‘int’ 53 | (n, xadj.data(), adjncy.data(), vwgt, seps, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:14: error: request for member ‘data’ in ‘order’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:29: error: request for member ‘data’ in ‘iorder’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:43: error: request for member ‘data’ in ‘sizes’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:52:16: error: there are no arguments to ‘METIS_NodeNDP’ that depend on a template parameter, so a declaration of ‘METIS_NodeNDP’ must be available [-fpermissive] 52 | int ierr = METIS_NodeNDP | ^~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:52:16: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:55:23: error: request for member ‘begin’ in ‘order’, which is of non-class type ‘int’ 55 | perm.assign(order.begin(), order.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:55:38: error: request for member ‘end’ in ‘order’, which is of non-class type ‘int’ 55 | perm.assign(order.begin(), order.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:56:25: error: request for member ‘begin’ in ‘iorder’, which is of non-class type ‘int’ 56 | iperm.assign(iorder.begin(), iorder.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:56:41: error: request for member ‘end’ in ‘iorder’, which is of non-class type ‘int’ 56 | iperm.assign(iorder.begin(), iorder.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: At global scope: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 60 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:21: error: template argument 1 is invalid 60 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 60 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:47: error: template argument 1 is invalid 60 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:4: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:17: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:29: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:57: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:62: error: template argument 1 is invalid 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:62: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 62 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:21: error: template argument 1 is invalid 62 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:43: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 62 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:48: error: template argument 1 is invalid 62 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:48: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:59:25: error: template-id ‘WRAPPER_METIS_NodeNDP<>’ for ‘int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, int&, int&, int&)’ does not match any template declaration 59 | template<> inline int WRAPPER_METIS_NodeNDP | ^~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:46:43: note: candidate is: ‘template int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, std::vector<_Tp>&, std::vector<_Tp>&, int&)’ 46 | template inline int WRAPPER_METIS_NodeNDP | ^~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 70 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:21: error: template argument 1 is invalid 70 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 70 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:47: error: template argument 1 is invalid 70 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:71:4: error: ‘idx_t’ has not been declared 71 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:71:17: error: ‘idx_t’ has not been declared 71 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, std::vector<_Tp>&, std::vector<_Tp>&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:73:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 73 | idx_t n = perm.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:74:22: error: template argument 2 is invalid 74 | std::vector order(n), iorder(n); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:74:30: error: ‘n’ was not declared in this scope; did you mean ‘yn’? 74 | std::vector order(n), iorder(n); | ^ | yn /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:76:17: error: request for member ‘data’ in ‘xadj’, which is of non-class type ‘int’ 76 | (&n, xadj.data(), adjncy.data(), vwgt, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:76:32: error: request for member ‘data’ in ‘adjncy’, which is of non-class type ‘int’ 76 | (&n, xadj.data(), adjncy.data(), vwgt, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:77:14: error: request for member ‘data’ in ‘order’, which is of non-class type ‘int’ 77 | order.data(), iorder.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:77:29: error: request for member ‘data’ in ‘iorder’, which is of non-class type ‘int’ 77 | order.data(), iorder.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:78:23: error: request for member ‘begin’ in ‘order’, which is of non-class type ‘int’ 78 | perm.assign(order.begin(), order.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:78:38: error: request for member ‘end’ in ‘order’, which is of non-class type ‘int’ 78 | perm.assign(order.begin(), order.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:79:25: error: request for member ‘begin’ in ‘iorder’, which is of non-class type ‘int’ 79 | iperm.assign(iorder.begin(), iorder.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:79:41: error: request for member ‘end’ in ‘iorder’, which is of non-class type ‘int’ 79 | iperm.assign(iorder.begin(), iorder.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: At global scope: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 83 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:21: error: template argument 1 is invalid 83 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 83 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:47: error: template argument 1 is invalid 83 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:4: error: ‘idx_t’ has not been declared 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:17: error: ‘idx_t’ has not been declared 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:45: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:50: error: template argument 1 is invalid 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:50: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 85 | std::vector& iperm) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:21: error: template argument 1 is invalid 85 | std::vector& iperm) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:82:25: error: template-id ‘WRAPPER_METIS_NodeND<>’ for ‘int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, int&, int&)’ does not match any template declaration 82 | template<> inline int WRAPPER_METIS_NodeND | ^~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:69:43: note: candidate is: ‘template int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, std::vector<_Tp>&, std::vector<_Tp>&)’ 69 | template inline int WRAPPER_METIS_NodeND | ^~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:93:32: warning: inline variables are only available with ‘-std=c++17’ or ‘-std=gnu++17’ 93 | template inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:38: error: expected primary-expression before ‘*’ token 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:40: error: ‘ptr’ was not declared in this scope 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:54: error: expected primary-expression before ‘*’ token 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:56: error: ‘ind’ was not declared in this scope; did you mean ‘find’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~ | find /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:18: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:25: error: ‘edge_cut’ was not declared in this scope 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:47: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:52: error: template argument 1 is invalid 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:52: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:55: error: ‘partitioning’ was not declared in this scope 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:67: error: expression list treated as compound expression in initializer [-fpermissive] 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:68: error: expected ‘;’ before ‘{’ token 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~ | ; /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:104:14: warning: inline variables are only available with ‘-std=c++17’ or ‘-std=gnu++17’ 104 | template<> inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:29: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:36: error: ‘ptr’ was not declared in this scope 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:41: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:48: error: ‘ind’ was not declared in this scope; did you mean ‘find’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~ | find /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:53: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:11: error: ‘edge_cut’ was not declared in this scope 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:33: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:38: error: template argument 1 is invalid 106 | idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:38: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:41: error: ‘partitioning’ was not declared in this scope 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:53: error: expression list treated as compound expression in initializer [-fpermissive] 106 | idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:104:25: warning: too many template headers for ‘strumpack::WRAPPER_METIS_PartGraphRecursive’ (should be 0) 104 | template<> inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:54: error: expected ‘;’ before ‘{’ token 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~ | ; /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:55: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 115 | (integer_t nodes, integer_t separators, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:60: error: template argument 1 is invalid 115 | (integer_t nodes, integer_t separators, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:60: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘std::unique_ptr > strumpack::metis_nested_dissection(integer_t, const integer_t*, const integer_t*, std::vector&, std::vector&, const strumpack::SPOptions&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 196 | std::vector xadj(n+1), adjncy(ptr[n]); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:22: error: template argument 1 is invalid 196 | std::vector xadj(n+1), adjncy(ptr[n]); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:22: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:216:24: error: template argument 2 is invalid 216 | std::vector sizes(nodes + 1); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In member function ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:222:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 222 | idx_t edge_cut = 0, nvtxs = sg.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:223:22: error: template argument 2 is invalid 223 | std::vector partitioning(nvtxs); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:223:37: error: ‘nvtxs’ was not declared in this scope 223 | std::vector partitioning(nvtxs); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:225:7: error: missing template arguments before ‘(’ token 225 | (nvtxs, 1, sg.ptr(), sg.ind(), 2, edge_cut, partitioning); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:225:41: error: ‘edge_cut’ was not declared in this scope 225 | (nvtxs, 1, sg.ptr(), sg.ind(), 2, edge_cut, partitioning); | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = int; strumpack::CSRGraph::Length2Edges = std::unordered_map, std::hash, std::equal_to, std::allocator > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:464:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer 234 | auto p = partitioning[j++]; | ~~~~~~~~~~~~^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = long int; strumpack::CSRGraph::Length2Edges = std::unordered_map >, std::hash, std::equal_to, std::allocator > > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:465:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = long long int; strumpack::CSRGraph::Length2Edges = std::unordered_map >, std::hash, std::equal_to, std::allocator > > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:466:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer make[2]: *** [CMakeFiles/strumpack.dir/build.make:244: CMakeFiles/strumpack.dir/src/sparse/CSRGraph.cpp.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [CMakeFiles/Makefile2:541: CMakeFiles/strumpack.dir/all] Error 2 make: *** [Makefile:146: all] Error 2 Consolidate compiler generated dependencies of target strumpack [ 0%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/CSRMatrixMPI.cpp.o [ 0%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/CSRGraph.cpp.o [ 1%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/EliminationTreeMPI.cpp.o [ 1%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/EliminationTreeMPIDist.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/PropMapSparseMatrix.cpp.o [ 2%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/fronts/FrontFactory.cpp.o [ 3%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/fronts/FrontalMatrixDense.cpp.o [ 3%] Building CXX object CMakeFiles/strumpack.dir/src/sparse/fronts/FrontalMatrix.cpp.o In file included from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:35, from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:34: /home/dslavchev/.local/include/metis.h:93:9: error: ‘SCOTCH_Num’ does not name a type 93 | typedef SCOTCH_Num idx_t; | ^~~~~~~~~~ In file included from /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:34: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 47 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:21: error: template argument 1 is invalid 47 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 47 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:47: error: template argument 1 is invalid 47 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:47:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:4: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:17: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:48:29: error: ‘idx_t’ has not been declared 48 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:47: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 49 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:52: error: template argument 1 is invalid 49 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:49:52: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, std::vector<_Tp>&, std::vector<_Tp>&, int&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:50:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 50 | idx_t n = perm.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:51:22: error: template argument 2 is invalid 51 | std::vector order(n), iorder(n); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:51:30: error: ‘n’ was not declared in this scope; did you mean ‘yn’? 51 | std::vector order(n), iorder(n); | ^ | yn /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:53:16: error: request for member ‘data’ in ‘xadj’, which is of non-class type ‘int’ 53 | (n, xadj.data(), adjncy.data(), vwgt, seps, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:53:31: error: request for member ‘data’ in ‘adjncy’, which is of non-class type ‘int’ 53 | (n, xadj.data(), adjncy.data(), vwgt, seps, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:14: error: request for member ‘data’ in ‘order’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:29: error: request for member ‘data’ in ‘iorder’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:54:43: error: request for member ‘data’ in ‘sizes’, which is of non-class type ‘int’ 54 | order.data(), iorder.data(), sizes.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:52:16: error: there are no arguments to ‘METIS_NodeNDP’ that depend on a template parameter, so a declaration of ‘METIS_NodeNDP’ must be available [-fpermissive] 52 | int ierr = METIS_NodeNDP | ^~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:52:16: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:55:23: error: request for member ‘begin’ in ‘order’, which is of non-class type ‘int’ 55 | perm.assign(order.begin(), order.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:55:38: error: request for member ‘end’ in ‘order’, which is of non-class type ‘int’ 55 | perm.assign(order.begin(), order.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:56:25: error: request for member ‘begin’ in ‘iorder’, which is of non-class type ‘int’ 56 | iperm.assign(iorder.begin(), iorder.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:56:41: error: request for member ‘end’ in ‘iorder’, which is of non-class type ‘int’ 56 | iperm.assign(iorder.begin(), iorder.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: At global scope: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 60 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:21: error: template argument 1 is invalid 60 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 60 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:47: error: template argument 1 is invalid 60 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:60:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:4: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:17: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:29: error: ‘idx_t’ has not been declared 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:57: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:62: error: template argument 1 is invalid 61 | idx_t* vwgt, idx_t seps, idx_t* options, std::vector& perm, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:61:62: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 62 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:21: error: template argument 1 is invalid 62 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:43: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 62 | std::vector& iperm, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:48: error: template argument 1 is invalid 62 | std::vector& iperm, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:62:48: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:59:25: error: template-id ‘WRAPPER_METIS_NodeNDP<>’ for ‘int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, int&, int&, int&)’ does not match any template declaration 59 | template<> inline int WRAPPER_METIS_NodeNDP | ^~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:46:43: note: candidate is: ‘template int strumpack::WRAPPER_METIS_NodeNDP(int&, int&, int*, int, int*, std::vector<_Tp>&, std::vector<_Tp>&, int&)’ 46 | template inline int WRAPPER_METIS_NodeNDP | ^~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 70 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:21: error: template argument 1 is invalid 70 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 70 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:47: error: template argument 1 is invalid 70 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:70:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:71:4: error: ‘idx_t’ has not been declared 71 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:71:17: error: ‘idx_t’ has not been declared 71 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, std::vector<_Tp>&, std::vector<_Tp>&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:73:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 73 | idx_t n = perm.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:74:22: error: template argument 2 is invalid 74 | std::vector order(n), iorder(n); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:74:30: error: ‘n’ was not declared in this scope; did you mean ‘yn’? 74 | std::vector order(n), iorder(n); | ^ | yn /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:76:17: error: request for member ‘data’ in ‘xadj’, which is of non-class type ‘int’ 76 | (&n, xadj.data(), adjncy.data(), vwgt, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:76:32: error: request for member ‘data’ in ‘adjncy’, which is of non-class type ‘int’ 76 | (&n, xadj.data(), adjncy.data(), vwgt, options, | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:77:14: error: request for member ‘data’ in ‘order’, which is of non-class type ‘int’ 77 | order.data(), iorder.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:77:29: error: request for member ‘data’ in ‘iorder’, which is of non-class type ‘int’ 77 | order.data(), iorder.data()); | ^~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:78:23: error: request for member ‘begin’ in ‘order’, which is of non-class type ‘int’ 78 | perm.assign(order.begin(), order.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:78:38: error: request for member ‘end’ in ‘order’, which is of non-class type ‘int’ 78 | perm.assign(order.begin(), order.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:79:25: error: request for member ‘begin’ in ‘iorder’, which is of non-class type ‘int’ 79 | iperm.assign(iorder.begin(), iorder.end()); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:79:41: error: request for member ‘end’ in ‘iorder’, which is of non-class type ‘int’ 79 | iperm.assign(iorder.begin(), iorder.end()); | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: At global scope: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 83 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:21: error: template argument 1 is invalid 83 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:42: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 83 | (std::vector& xadj, std::vector& adjncy, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:47: error: template argument 1 is invalid 83 | (std::vector& xadj, std::vector& adjncy, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:83:47: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:4: error: ‘idx_t’ has not been declared 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:17: error: ‘idx_t’ has not been declared 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:45: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:50: error: template argument 1 is invalid 84 | idx_t* vwgt, idx_t* options, std::vector& perm, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:84:50: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:16: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 85 | std::vector& iperm) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:21: error: template argument 1 is invalid 85 | std::vector& iperm) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:85:21: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:82:25: error: template-id ‘WRAPPER_METIS_NodeND<>’ for ‘int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, int&, int&)’ does not match any template declaration 82 | template<> inline int WRAPPER_METIS_NodeND | ^~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:69:43: note: candidate is: ‘template int strumpack::WRAPPER_METIS_NodeND(int&, int&, int*, int*, std::vector<_Tp>&, std::vector<_Tp>&)’ 69 | template inline int WRAPPER_METIS_NodeND | ^~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:93:32: warning: inline variables are only available with ‘-std=c++17’ or ‘-std=gnu++17’ 93 | template inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:38: error: expected primary-expression before ‘*’ token 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:40: error: ‘ptr’ was not declared in this scope 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:54: error: expected primary-expression before ‘*’ token 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:94:56: error: ‘ind’ was not declared in this scope; did you mean ‘find’? 94 | (idx_t nvtxs, idx_t ncon, integer_t* ptr, integer_t* ind, | ^~~ | find /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:18: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:25: error: ‘edge_cut’ was not declared in this scope 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:47: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:52: error: template argument 1 is invalid 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:52: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:55: error: ‘partitioning’ was not declared in this scope 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:67: error: expression list treated as compound expression in initializer [-fpermissive] 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:95:68: error: expected ‘;’ before ‘{’ token 95 | idx_t nparts, idx_t& edge_cut, std::vector& partitioning) { | ^~ | ; /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:104:14: warning: inline variables are only available with ‘-std=c++17’ or ‘-std=gnu++17’ 104 | template<> inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:29: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:36: error: ‘ptr’ was not declared in this scope 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:41: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:48: error: ‘ind’ was not declared in this scope; did you mean ‘find’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~ | find /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:105:53: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 105 | (idx_t nvtxs, idx_t ncon, idx_t* ptr, idx_t* ind, idx_t nparts, | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:4: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:11: error: ‘edge_cut’ was not declared in this scope 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:33: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:38: error: template argument 1 is invalid 106 | idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:38: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:41: error: ‘partitioning’ was not declared in this scope 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:53: error: expression list treated as compound expression in initializer [-fpermissive] 106 | idx_t& edge_cut, std::vector& partitioning) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:104:25: warning: too many template headers for ‘strumpack::WRAPPER_METIS_PartGraphRecursive’ (should be 0) 104 | template<> inline int WRAPPER_METIS_PartGraphRecursive | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:106:54: error: expected ‘;’ before ‘{’ token 106 | idx_t& edge_cut, std::vector& partitioning) { | ^~ | ; /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:55: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 115 | (integer_t nodes, integer_t separators, std::vector& sizes) { | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:60: error: template argument 1 is invalid 115 | (integer_t nodes, integer_t separators, std::vector& sizes) { | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:115:60: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp: In function ‘std::unique_ptr > strumpack::metis_nested_dissection(integer_t, const integer_t*, const integer_t*, std::vector&, std::vector&, const strumpack::SPOptions&)’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:17: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 196 | std::vector xadj(n+1), adjncy(ptr[n]); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:22: error: template argument 1 is invalid 196 | std::vector xadj(n+1), adjncy(ptr[n]); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:196:22: error: template argument 2 is invalid /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/ordering/MetisReordering.hpp:216:24: error: template argument 2 is invalid 216 | std::vector sizes(nodes + 1); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In member function ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:222:5: error: ‘idx_t’ was not declared in this scope; did you mean ‘id_t’? 222 | idx_t edge_cut = 0, nvtxs = sg.size(); | ^~~~~ | id_t /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:223:22: error: template argument 2 is invalid 223 | std::vector partitioning(nvtxs); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:223:37: error: ‘nvtxs’ was not declared in this scope 223 | std::vector partitioning(nvtxs); | ^~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:225:7: error: missing template arguments before ‘(’ token 225 | (nvtxs, 1, sg.ptr(), sg.ind(), 2, edge_cut, partitioning); | ^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:225:41: error: ‘edge_cut’ was not declared in this scope 225 | (nvtxs, 1, sg.ptr(), sg.ind(), 2, edge_cut, partitioning); | ^~~~~~~~ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = int; strumpack::CSRGraph::Length2Edges = std::unordered_map, std::hash, std::equal_to, std::allocator > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:464:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer 234 | auto p = partitioning[j++]; | ~~~~~~~~~~~~^ /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = long int; strumpack::CSRGraph::Length2Edges = std::unordered_map >, std::hash, std::equal_to, std::allocator > > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:465:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp: In instantiation of ‘void strumpack::CSRGraph::split_recursive(int, int, integer_t, integer_t, integer_t, integer_t*, strumpack::structured::ClusterTree&, integer_t&, integer_t, integer_t, const Length2Edges&) const [with integer_t = long long int; strumpack::CSRGraph::Length2Edges = std::unordered_map >, std::hash, std::equal_to, std::allocator > > > >]’: /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:466:18: required from here /home/dslavchev/NuclearTesting/software/STRUMPACK-6.3.0/src/sparse/CSRGraph.cpp:234:30: error: subscripted value is neither array nor pointer make[3]: *** [CMakeFiles/strumpack.dir/build.make:244: CMakeFiles/strumpack.dir/src/sparse/CSRGraph.cpp.o] Error 1 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [CMakeFiles/Makefile2:541: CMakeFiles/strumpack.dir/all] Error 2 make[1]: *** [CMakeFiles/Makefile2:1323: examples/CMakeFiles/examples.dir/rule] Error 2 make: *** [Makefile:556: examples] Error 2