Bug#1114235: nvidia-cuda-toolkit: FTBFS: cudaapi.c:38:33: error: initialization of 'CUDBGResult (*)(uint32_t)' {aka 'CUDBGResult (*)(unsigned int)'} from incompatible pointer type 'CUDBGResult (*)(void)' [-Wincompatible-pointer-types]

Santiago Vila sanvila at debian.org
Fri Sep 5 19:21:27 BST 2025


Package: src:nvidia-cuda-toolkit
Version: 12.4.1-3
Severity: serious
Tags: ftbfs forky sid

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build.

Below you will find how the build ends (probably the most relevant part,
but not necessarily). If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202509/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:nvidia-cuda-toolkit, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
   debian/rules build
make[2]: Entering directory '/<<PKGBUILDDIR>>'
dh build
   debian/rules execute_before_dh_update_autotools_config
make[3]: Entering directory '/<<PKGBUILDDIR>>'
perl -p \
-e 's{#VERSION_TOOLKIT#}{12.4.1}g;' \
-e 's{#DEFAULT_GCC_VERSION#}{13}g;' \
-e 's{#DEB_HOST_MULTIARCH#}{x86_64-linux-gnu}g;' \
-e 's{#LIBDIR#}{usr/lib/x86_64-linux-gnu}g;' \
-e 's{#!ppc64el#}{}g;' \
-e 's{#arm64#}{#}g;' \
-e 's{#!arm64#}{}g;' \
-e 's{#CUDA_JAVA_HOME#}{/usr/lib/jvm/java-8-openjdk-amd64}g;' \

[... snipped ...]

cudaapi.c:1851:5: note: in expansion of macro ‘API_CALL’
 1851 |     API_CALL(notSupported),
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.writeUniformPredicates’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1851:5: note: in expansion of macro ‘API_CALL’
 1851 |     API_CALL(notSupported),
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(uint32_t,  uint64_t,  CUDBGLoadedFunctionInfo *, uint32_t)’ {aka ‘CUDBGResult (*)(unsigned int,  long unsigned int,  CUDBGLoadedFunctionInfo *, unsigned int)’} from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1854:5: note: in expansion of macro ‘API_CALL’
 1854 |     API_CALL(notSupported),
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.getLoadedFunctionInfo118’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1854:5: note: in expansion of macro ‘API_CALL’
 1854 |     API_CALL(notSupported),
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(uint32_t,  uint64_t,  CUDBGLoadedFunctionInfo *, uint32_t,  uint32_t)’ {aka ‘CUDBGResult (*)(unsigned int,  long unsigned int,  CUDBGLoadedFunctionInfo *, unsigned int,  unsigned int)’} from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1866:5: note: in expansion of macro ‘API_CALL’
 1866 |     API_CALL(notSupported), /* getLoadedFunctionInfo */
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.getLoadedFunctionInfo’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1866:5: note: in expansion of macro ‘API_CALL’
 1866 |     API_CALL(notSupported), /* getLoadedFunctionInfo */
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(const char *, CUDBGCoredumpGenerationFlags)’ from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1867:5: note: in expansion of macro ‘API_CALL’
 1867 |     API_CALL(notSupported), /* generateCoredump */
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.generateCoredump’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1867:5: note: in expansion of macro ‘API_CALL’
 1867 |     API_CALL(notSupported), /* generateCoredump */
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(uint32_t,  CUDBGDeviceInfoSizes *)’ {aka ‘CUDBGResult (*)(unsigned int,  CUDBGDeviceInfoSizes *)’} from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1871:5: note: in expansion of macro ‘API_CALL’
 1871 |     API_CALL(notSupported), /* getDeviceInfoSizes */
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.getDeviceInfoSizes’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1871:5: note: in expansion of macro ‘API_CALL’
 1871 |     API_CALL(notSupported), /* getDeviceInfoSizes */
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(uint32_t,  CUDBGDeviceInfoQueryType_t,  void *, uint32_t,  uint32_t *)’ {aka ‘CUDBGResult (*)(unsigned int,  CUDBGDeviceInfoQueryType_t,  void *, unsigned int,  unsigned int *)’} from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1872:5: note: in expansion of macro ‘API_CALL’
 1872 |     API_CALL(notSupported), /* getDeviceInfo */
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.getDeviceInfo’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1872:5: note: in expansion of macro ‘API_CALL’
 1872 |     API_CALL(notSupported), /* getDeviceInfo */
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
cudaapi.c:38:33: error: initialization of ‘CUDBGResult (*)(uint32_t,  uint32_t,  uint32_t,  uint32_t,  uint32_t,  uint32_t,  uint64_t *)’ {aka ‘CUDBGResult (*)(unsigned int,  unsigned int,  unsigned int,  unsigned int,  unsigned int,  unsigned int,  long unsigned int *)’} from incompatible pointer type ‘CUDBGResult (*)(void)’ [-Wincompatible-pointer-types]
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1874:5: note: in expansion of macro ‘API_CALL’
 1874 |     API_CALL(notSupported), /* singleStepWarp */
      |     ^~~~~~~~
cudaapi.c:38:33: note: (near initialization for ‘cudbgCoreApi.singleStepWarp’)
   38 | #define API_CALL(name)          cuCoreApi_##name
      |                                 ^~~~~~~~~~
cudaapi.c:1874:5: note: in expansion of macro ‘API_CALL’
 1874 |     API_CALL(notSupported), /* singleStepWarp */
      |     ^~~~~~~~
cudaapi.c:37:52: note: ‘cuCoreApi_notSupported’ declared here
   37 | #define DEF_API_CALL(name)      static CUDBGResult cuCoreApi_##name
      |                                                    ^~~~~~~~~~
cudaapi.c:90:1: note: in expansion of macro ‘DEF_API_CALL’
   90 | DEF_API_CALL(notSupported)()
      | ^~~~~~~~~~~~
make[6]: *** [Makefile:389: cudaapi.o] Error 1
make[6]: Leaving directory '/<<PKGBUILDDIR>>/cuda-gdb/libcudacore'
make[5]: *** [Makefile:13350: all-libcudacore] Error 2
make[5]: *** Waiting for unfinished jobs....
yes
checking whether strtol is declared... yes
checking whether strtoul is declared... yes
checking whether strtoll is declared... yes
checking whether strtoull is declared... yes
checking whether strverscmp is declared... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... yes
checking for pid_t... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking for ld used by GCC... ld
checking if the linker (ld) is GNU ld... yes
checking for shared library run path origin... done
checking for ANSI C header files... (cached) yes
checking for working alloca.h... yes
checking for alloca... yes
checking for nl_langinfo and CODESET... yes
checking linux/perf_event.h usability... yes
checking linux/perf_event.h presence... yes
checking for linux/perf_event.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking for memory.h... (cached) yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/un.h usability... yes
checking sys/un.h presence... yes
checking for sys/un.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking thread_db.h usability... yes
checking thread_db.h presence... yes
checking for thread_db.h... yes
checking wait.h usability... yes
checking wait.h presence... yes
checking for wait.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking for dlfcn.h... (cached) yes
checking linux/elf.h usability... yes
checking linux/elf.h presence... yes
checking for linux/elf.h... yes
checking proc_service.h usability... yes
checking proc_service.h presence... yes
checking for proc_service.h... yes
checking poll.h usability... yes
checking poll.h presence... yes
checking for poll.h... yes
checking sys/poll.h usability... yes
checking sys/poll.h presence... yes
checking for sys/poll.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking for getpagesize... yes
checking for working mmap... yes
checking vfork.h usability... no
checking vfork.h presence... no
checking for vfork.h... no
checking for fork... yes
checking for vfork... yes
checking for working fork... yes
checking for working vfork... (cached) yes
checking for fdwalk... no
checking for getrlimit... yes
checking for pipe... yes
checking for pipe2... yes
checking for poll... yes
checking for socketpair... yes
checking for sigaction... yes
checking for ptrace64... no
checking for sbrk... yes
checking for setns... yes
checking for sigaltstack... yes
checking for sigprocmask... yes
checking for setpgid... yes
checking for setpgrp... yes
checking for getrusage... yes
checking for getauxval... yes
checking for sigtimedwait... yes
checking whether ADDR_NO_RANDOMIZE is declared... yes
checking whether strstr is declared... yes
checking for struct stat.st_blocks... yes
checking for struct stat.st_blksize... yes
checking for library containing kinfo_getfile... no
checking for kinfo_getfile... no
checking whether gcc is Clang... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking whether more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for std::thread... yes
checking for pthread_sigmask... yes
checking for pthread_setname_np... yes
checking for sigsetjmp... yes
checking whether to use intel pt... yes
checking for libipt... yes
checking how to link with libipt... /usr/lib/x86_64-linux-gnu/libipt.so
checking for pt_insn_event... yes
checking for struct pt_insn.enabled... no
checking for struct pt_insn.resynced... no
checking for long long support in printf... yes
checking sys/procfs.h usability... yes
checking sys/procfs.h presence... yes
checking for sys/procfs.h... yes
checking for gregset_t in sys/procfs.h... no
checking for fpregset_t in sys/procfs.h... no
checking for prgregset_t in sys/procfs.h... yes
checking for prfpregset_t in sys/procfs.h... yes
checking for prgregset32_t in sys/procfs.h... no
checking for lwpid_t in sys/procfs.h... yes
checking for psaddr_t in sys/procfs.h... yes
checking for elf_fpregset_t in sys/procfs.h... yes
checking sys/ptrace.h usability... yes
checking sys/ptrace.h presence... yes
checking for sys/ptrace.h... yes
checking ptrace.h usability... no
checking ptrace.h presence... no
checking for ptrace.h... no
checking return type of ptrace... long
checking types of arguments for ptrace... enum __ptrace_request,int,long,long
checking the compiler type... gcc
checking compiler warning flags...  -Wall -Wpointer-arith -Wno-unused -Wunused-value -Wunused-variable -Wunused-function -Wno-switch -Wno-char-subscripts -Wempty-body -Wunused-but-set-parameter -Wunused-but-set-variable -Wno-sign-compare -Wno-error=maybe-uninitialized -Wno-mismatched-tags -Wsuggest-override -Wimplicit-fallthrough=3 -Wduplicated-cond -Wshadow=local -Wdeprecated-copy -Wdeprecated-copy-dtor -Wredundant-move -Wmissing-declarations -Wstrict-null-sentinel -Wformat -Wformat-nonliteral 
configure: updating cache ./config.cache
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
make[5]: Leaving directory '/<<PKGBUILDDIR>>/cuda-gdb'
make[4]: *** [Makefile:1006: all] Error 2
make[4]: Leaving directory '/<<PKGBUILDDIR>>/cuda-gdb'
dh_auto_build: error: cd cuda-gdb && make -j2 V=1 returned exit code 2
make[3]: *** [debian/rules:498: override_dh_auto_build-arch] Error 25
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: *** [debian/rules:227: build] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: *** [debian/rules:227: install] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:227: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------



More information about the pkg-nvidia-devel mailing list