Source: getfem Version: 5.4.4+dfsg1-5 Severity: normal Tags: ftbfs Control: forwarded -1 https://savannah.nongnu.org/bugs/index.php?68083
The debian getfem package has been configured to build using MUMPS as the linear solver. But it is also supposed to be able to build against SuperLU. MUMPS is not available for hppa or powerpc, so I configured the getfem build to use SuperLU on these architectures, configuring with `--enable-superlu --disable-mumps` However getfem fails to build against SuperLU. The debian build logs are hppa: https://buildd.debian.org/status/fetch.php?pkg=getfem&arch=hppa&ver=5.4.4%2Bdfsg1-6&stamp=1771777630&raw=0 powerpc: https://buildd.debian.org/status/fetch.php?pkg=getfem&arch=powerpc&ver=5.4.4%2Bdfsg1-6&stamp=1771773521&raw=0 But I can also reproduce the problem locally on amd64. This is with SuperLU provided by libsuperlu-dev 7.0.1+dfsg1-2+b1 I've reported the issue upstream at https://savannah.nongnu.org/bugs/index.php?68083 An extract from the build log is: g++ -DHAVE_CONFIG_H -I. -I.. -I../src/getfem -I../src/gmm -I../src -I../src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/local/include -Wall -g -O2 -ffile-prefix-map=/build/reproducible-path/getfem-5.4.4+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -fmessage-length=0 -fvisibility-inlines-hidden -ftemplate-depth-100 -std=c++14 -fPIC -Wall -W -Wextra -Wshadow -Wno-unknown-pragmas -Wno-variadic-macros -Wno-unused-but-set-variable -Wpointer-arith -Wcast-qual -Wwrite-strings -Wconversion -Wredundant-decls -Wno-long-long -c -o test_mesh_im_level_set.o test_mesh_im_level_set.cc In file included from /usr/include/c++/15/atomic:53, from ../src/getfem/getfem_omp.h:41, from ../src/getfem/dal_singleton.h:49, from ../src/getfem/bgeot_small_vector.h:40, from ../src/getfem/bgeot_tensor.h:40, from ../src/getfem/bgeot_convex_structure.h:43, from ../src/getfem/bgeot_mesh_structure.h:42, from ../src/getfem/bgeot_mesh.h:41, from ../src/getfem/getfem_mesh.h:43, from ../src/getfem/getfem_mesh_fem.h:41, from ../src/getfem/getfem_assembling_tensors.h:41, from ../src/getfem/getfem_assembling.h:45, from test_range_basis.cc:27: /usr/include/c++/15/cstdint:58:11: error: ‘int_fast8_t’ has not been declared in ‘::’ 58 | using ::int_fast8_t; | ^~~~~~~~~~~ /usr/include/c++/15/cstdint:59:11: error: ‘int_fast16_t’ has not been declared in ‘::’ 59 | using ::int_fast16_t; | ^~~~~~~~~~~~ /usr/include/c++/15/cstdint:60:11: error: ‘int_fast32_t’ has not been declared in ‘::’ 60 | using ::int_fast32_t; | ^~~~~~~~~~~~ /usr/include/c++/15/cstdint:61:11: error: ‘int_fast64_t’ has not been declared in ‘::’ 61 | using ::int_fast64_t; | ^~~~~~~~~~~~ /usr/include/c++/15/cstdint:63:11: error: ‘int_least8_t’ has not been declared in ‘::’ 63 | using ::int_least8_t; | ^~~~~~~~~~~~ /usr/include/c++/15/cstdint:64:11: error: ‘int_least16_t’ has not been declared in ‘::’ 64 | using ::int_least16_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:65:11: error: ‘int_least32_t’ has not been declared in ‘::’ 65 | using ::int_least32_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:66:11: error: ‘int_least64_t’ has not been declared in ‘::’ 66 | using ::int_least64_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:68:11: error: ‘intmax_t’ has not been declared in ‘::’ 68 | using ::intmax_t; | ^~~~~~~~ /usr/include/c++/15/cstdint:69:11: error: ‘intptr_t’ has not been declared in ‘::’ 69 | using ::intptr_t; | ^~~~~~~~ /usr/include/c++/15/cstdint:71:11: error: ‘uint8_t’ has not been declared in ‘::’ 71 | using ::uint8_t; | ^~~~~~~ /usr/include/c++/15/cstdint:72:11: error: ‘uint16_t’ has not been declared in ‘::’ 72 | using ::uint16_t; | ^~~~~~~~ /usr/include/c++/15/cstdint:73:11: error: ‘uint32_t’ has not been declared in ‘::’ 73 | using ::uint32_t; | ^~~~~~~~ /usr/include/c++/15/cstdint:74:11: error: ‘uint64_t’ has not been declared in ‘::’ 74 | using ::uint64_t; | ^~~~~~~~ /usr/include/c++/15/cstdint:76:11: error: ‘uint_fast8_t’ has not been declared in ‘::’ 76 | using ::uint_fast8_t; | ^~~~~~~~~~~~ /usr/include/c++/15/cstdint:77:11: error: ‘uint_fast16_t’ has not been declared in ‘::’ 77 | using ::uint_fast16_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:78:11: error: ‘uint_fast32_t’ has not been declared in ‘::’ 78 | using ::uint_fast32_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:79:11: error: ‘uint_fast64_t’ has not been declared in ‘::’ 79 | using ::uint_fast64_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:81:11: error: ‘uint_least8_t’ has not been declared in ‘::’ 81 | using ::uint_least8_t; | ^~~~~~~~~~~~~ /usr/include/c++/15/cstdint:82:11: error: ‘uint_least16_t’ has not been declared in ‘::’ 82 | using ::uint_least16_t; | ^~~~~~~~~~~~~~ /usr/include/c++/15/cstdint:83:11: error: ‘uint_least32_t’ has not been declared in ‘::’ 83 | using ::uint_least32_t; | ^~~~~~~~~~~~~~ /usr/include/c++/15/cstdint:84:11: error: ‘uint_least64_t’ has not been declared in ‘::’ 84 | using ::uint_least64_t; | ^~~~~~~~~~~~~~ /usr/include/c++/15/cstdint:86:11: error: ‘uintmax_t’ has not been declared in ‘::’ 86 | using ::uintmax_t; | ^~~~~~~~~ /usr/include/c++/15/cstdint:87:11: error: ‘uintptr_t’ has not been declared in ‘::’ 87 | using ::uintptr_t; | ^~~~~~~~~ /usr/include/c++/15/atomic:1123:18: error: ‘uint8_t’ was not declared in this scope; did you mean ‘SuperLU::uint8_t’? 1123 | typedef atomic<uint8_t> atomic_uint8_t; | ^~~~~~~ | SuperLU::uint8_t In file included from /usr/include/stdint.h:37, from /usr/lib/gcc/powerpc-linux-gnu/15/include/stdint.h:11, from /usr/include/inttypes.h:27, from /usr/include/superlu/slu_util.h:27, from ../src/gmm/gmm_superlu_interface.h:68, from ../src/gmm/gmm_solver_Schwarz_additive.h:43, from ../src/gmm/gmm_iter_solvers.h:100, from ../src/gmm/gmm.h:44, from test_range_basis.cc:26: /usr/include/powerpc-linux-gnu/bits/stdint-uintn.h:24:19: note: ‘SuperLU::uint8_t’ declared here 24 | typedef __uint8_t uint8_t; | ^~~~~~~ /usr/include/c++/15/atomic:1123:25: error: template argument 1 is invalid 1123 | typedef atomic<uint8_t> atomic_uint8_t; | ^ /usr/include/c++/15/atomic:1129:18: error: ‘uint16_t’ was not declared in this scope; did you mean ‘SuperLU::uint16_t’? 1129 | typedef atomic<uint16_t> atomic_uint16_t; | ^~~~~~~~ | SuperLU::uint16_t /usr/include/powerpc-linux-gnu/bits/stdint-uintn.h:25:20: note: ‘SuperLU::uint16_t’ declared here 25 | typedef __uint16_t uint16_t; | ^~~~~~~~ /usr/include/c++/15/atomic:1129:26: error: template argument 1 is invalid 1129 | typedef atomic<uint16_t> atomic_uint16_t; | ^ /usr/include/c++/15/atomic:1135:18: error: ‘uint32_t’ was not declared in this scope; did you mean ‘SuperLU::uint32_t’? 1135 | typedef atomic<uint32_t> atomic_uint32_t; | ^~~~~~~~ | SuperLU::uint32_t /usr/include/powerpc-linux-gnu/bits/stdint-uintn.h:26:20: note: ‘SuperLU::uint32_t’ declared here 26 | typedef __uint32_t uint32_t; | ^~~~~~~~ /usr/include/c++/15/atomic:1135:26: error: template argument 1 is invalid 1135 | typedef atomic<uint32_t> atomic_uint32_t; | ^ /usr/include/c++/15/atomic:1141:18: error: ‘uint64_t’ was not declared in this scope; did you mean ‘SuperLU::uint64_t’? 1141 | typedef atomic<uint64_t> atomic_uint64_t; | ^~~~~~~~ | SuperLU::uint64_t /usr/include/powerpc-linux-gnu/bits/stdint-uintn.h:27:20: note: ‘SuperLU::uint64_t’ declared here 27 | typedef __uint64_t uint64_t; | ^~~~~~~~ /usr/include/c++/15/atomic:1141:26: error: template argument 1 is invalid 1141 | typedef atomic<uint64_t> atomic_uint64_t; | ^

