Bug#882667: hypre: CUDA support: hacks impeded by -W flags
Drew Parsons
dparsons at debian.org
Sat Nov 25 18:10:21 UTC 2017
On Sat, 25 Nov 2017 20:24:50 +0800 Drew Parsons <dparsons at debian.org>
wrote:
>
> Again, the problem is that -W is not recognised by nvcc. Would have
> to hack the soname patch to encapsulate it inside --compiler-options
Can get further using nvcc --linker-options to carry -Wl options.
But "CC=mpiCC CUDACXX=mpiCC dh_auto_configure" seems better than
"CC=nvcc", together with export OMPI_CXX=g++-5 to set mpiCC.
With other sundry hacks, gets to src/struct_mv and stalls at
assumed_part.c, apparently because of inconsistencies in C/C++
standards between nvcc and CC.Depending on whether g++-5 or clang++-3.8
is used, whether -std=c++11 or c++14 or c++98 is passed to gcc, get
either
- conflict in multiple definitions of isnan, conflicting between
CUDA's /usr/include/math_functions.h and /usr/include/x86_64-linux-
gnu/bits/mathcalls.h
- or similar multiple definitions in abs(float)
- or /usr/include/cuda_fp16.h:985:68: error: C does not support default arguments
__CUDA_FP16_DECL__ __half2 __shfl(__half2 var, int delta, int width=warpSize);
- or inconsistent C/C++ definitions
./_hypre_struct_mv.h:1464:8: error: expected identifier or '('
extern "C++" {
^
./_hypre_struct_mv.h:1488:22: error: unexpected OpenMP directive '#pragma omp parallel for'
#pragma omp parallel for schedule(static)
More information about the debian-science-maintainers
mailing list