[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1097800: rocr-runtime: ftbfs with GCC-15



Package: src:rocr-runtime
Version: 6.1.2-3
Severity: important
Tags: sid forky
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/rocr-runtime_6.1.2-3_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
 1672 |       GElfSection *section = new (std::nothrow) GElfSection(this);
      |                                                                 ^
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp: In member function ‘rocr::amd::elf::RelocationSection* rocr::amd::elf::GElfImage::addRelocationSection(rocr::amd::elf::Section*, rocr::amd::elf::SymbolTable*)’:
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp:1691:99: error: invalid new-expression of abstract class type ‘rocr::amd::elf::GElfRelocationSection’
 1691 |       GElfRelocationSection *rsec = new GElfRelocationSection(this, sec, (GElfSymbolTable*) symtab);
      |                                                                                                   ^
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp: In function ‘rocr::amd::elf::Image* rocr::amd::elf::NewElf32Image()’:
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp:1715:61: error: invalid new-expression of abstract class type ‘rocr::amd::elf::GElfImage’
 1715 |     Image* NewElf32Image() { return new GElfImage(ELFCLASS32); }
      |                                                             ^
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp:683:11: note:   because the following virtual functions are pure within ‘rocr::amd::elf::GElfImage’:
  683 |     class GElfImage : public Image {
      |           ^~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:158:20: note:     ‘virtual bool rocr::amd::elf::Image::initNew(int, int, int, int, int)’
  158 |       virtual bool initNew(uint16_t machine, uint16_t type, uint8_t os_abi = 0, uint8_t abi_version = 0, uint32_t e_flags = 0) = 0;
      |                    ^~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:185:28: note:     ‘virtual rocr::amd::elf::SymbolTable* rocr::amd::elf::Image::getSymtab(int)’
  185 |       virtual SymbolTable* getSymtab(uint16_t index) = 0;
      |                            ^~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:187:28: note:     ‘virtual rocr::amd::elf::SymbolTable* rocr::amd::elf::Image::getDynsym(int)’
  187 |       virtual SymbolTable* getDynsym(uint16_t index) = 0;
      |                            ^~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:189:28: note:     ‘virtual rocr::amd::elf::SymbolTable* rocr::amd::elf::Image::getSymbolTable(int)’
  189 |       virtual SymbolTable* getSymbolTable(uint16_t index) = 0;
      |                            ^~~~~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:192:28: note:     ‘virtual rocr::amd::elf::StringTable* rocr::amd::elf::Image::getStringTable(int)’
  192 |       virtual StringTable* getStringTable(uint16_t index) = 0;
      |                            ^~~~~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:198:24: note:     ‘virtual rocr::amd::elf::Segment* rocr::amd::elf::Image::segmentByVAddr(int)’
  198 |       virtual Segment* segmentByVAddr(uint64_t vaddr) = 0;
      |                        ^~~~~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:202:24: note:     ‘virtual rocr::amd::elf::Section* rocr::amd::elf::Image::sectionByVAddr(int)’
  202 |       virtual Section* sectionByVAddr(uint64_t vaddr) = 0;
      |                        ^~~~~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:207:24: note:     ‘virtual rocr::amd::elf::Segment* rocr::amd::elf::Image::initSegment(int, int, int)’
  207 |       virtual Segment* initSegment(uint32_t type, uint32_t flags, uint64_t paddr = 0) = 0;
      |                        ^~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:210:24: note:     ‘virtual rocr::amd::elf::Section* rocr::amd::elf::Image::addSection(const std::string&, int, int, int, rocr::amd::elf::Segment*)’
  210 |       virtual Section* addSection(const std::string &name,
      |                        ^~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp: In function ‘rocr::amd::elf::Image* rocr::amd::elf::NewElf64Image()’:
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp:1716:61: error: invalid new-expression of abstract class type ‘rocr::amd::elf::GElfImage’
 1716 |     Image* NewElf64Image() { return new GElfImage(ELFCLASS64); }
      |                                                             ^
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp: At global scope:
/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_elf_image.cpp:1747:61: error: ‘std::string rocr::amd::elf::GetNoteString(uint32_t, const char*)’ redeclared as different kind of entity
 1747 |     std::string GetNoteString(uint32_t s_size, const char* s)
      |                                                             ^
/build/reproducible-path/rocr-runtime-6.1.2/src/core/inc/amd_elf_image.hpp:227:17: note: previous declaration ‘std::string rocr::amd::elf::GetNoteString’
  227 |     std::string GetNoteString(uint32_t s_size, const char* s);
      |                 ^~~~~~~~~~~~~
[ 79%] Building CXX object CMakeFiles/hsa-runtime64.dir/libamdhsacode/amd_options.cpp.o
/usr/bin/c++ -DAMD_INTERNAL_BUILD -DBRAHMA_BUILD=1 -DHAVE_MEMFD_CREATE -DHSA_DEPRECATED="" -DHSA_EXPORT=1 -DHSA_EXPORT_FINALIZER=1 -DHSA_EXPORT_IMAGES=1 -DHSA_IMAGE_SUPPORT -DLINUX -DLITTLEENDIAN_CPU=1 -DROCR_BUILD_ID=\"1.13.0-local-build-unknown\" -DUNIX_OS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__linux__ -Dhsa_runtime64_EXPORTS -I/build/reproducible-path/rocr-runtime-6.1.2/src/inc -I/build/reproducible-path/rocr-runtime-6.1.2/src -I/build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode -I/build/reproducible-path/rocr-runtime-6.1.2/obj-x86_64-linux-gnu/core/runtime/trap_handler -I/build/reproducible-path/rocr-runtime-6.1.2/obj-x86_64-linux-gnu/core/runtime/blit_shaders -I/build/reproducible-path/rocr-runtime-6.1.2/src/image -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/inc -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src -I/build/reproducible-p
 ath/rocr-runtime-6.1.2/src/image/addrlib/src/core -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/r800 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/gfx9 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/gfx10 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/gfx11 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/chip/r800 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/chip/gfx9 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/chip/gfx10 -I/build/reproducible-path/rocr-runtime-6.1.2/src/image/addrlib/src/chip/gfx11 -isystem /usr/include/libdrm -g -O2 -ffile-prefix-map=/build/reproducible-path/rocr-runtime-6.1.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Wall -std=c++11 -fPIC -Wl,--unresolved-symbols=ignore-in-shared-libs -fno-strict-aliasing -m64 -msse 
 -msse2 -fexceptions -fno-rtti -fvisibility=hidden -Wno-error=missing-braces -Wno-error=sign-compare -Wno-sign-compare -Wno-write-strings -Wno-conversion-null -fno-math-errno -fno-threadsafe-statics -fmerge-all-constants -fms-extensions -Wno-error=comment -Wno-comment -Wno-error=pointer-arith -Wno-pointer-arith -Wno-error=unused-variable -Wno-error=unused-function -mmwaitx -Wno-deprecated-declarations -Wno-error=maybe-uninitialized -Wno-error=unused-but-set-variable -MD -MT CMakeFiles/hsa-runtime64.dir/libamdhsacode/amd_options.cpp.o -MF CMakeFiles/hsa-runtime64.dir/libamdhsacode/amd_options.cpp.o.d -o CMakeFiles/hsa-runtime64.dir/libamdhsacode/amd_options.cpp.o -c /build/reproducible-path/rocr-runtime-6.1.2/src/libamdhsacode/amd_options.cpp
make[3]: *** [CMakeFiles/hsa-runtime64.dir/build.make:544: CMakeFiles/hsa-runtime64.dir/libamdhsacode/amd_elf_image.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
/build/reproducible-path/rocr-runtime-6.1.2/src/core/runtime/runtime.cpp: In member function ‘hsa_status_t rocr::core::Runtime::IPCAttach(const hsa_amd_ipc_memory_t*, size_t, uint32_t, rocr::core::Agent**, void**)’:
/build/reproducible-path/rocr-runtime-6.1.2/src/core/runtime/runtime.cpp:1424:17: warning: ‘dmaBufFDHandle’ may be used uninitialized [-Wmaybe-uninitialized]
 1424 |   GetIPCDmaBufFD(importHandle.handle[2], dmaBufFDHandle, true);
      |   ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/build/reproducible-path/rocr-runtime-6.1.2/src/core/runtime/runtime.cpp:1278:12: note: ‘dmaBufFDHandle’ was declared here
 1278 |   uint64_t dmaBufFDHandle;
      |            ^~~~~~~~~~~~~~
make[3]: Leaving directory '/build/reproducible-path/rocr-runtime-6.1.2/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:165: CMakeFiles/hsa-runtime64.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/rocr-runtime-6.1.2/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:159: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/rocr-runtime-6.1.2/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:13: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2


Reply to: