Bug#1097073: kodi-pvr-hts: ftbfs with GCC-15
Package: src:kodi-pvr-hts
Version: 21.2.6+ds-1
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/kodi-pvr-hts_21.2.6+ds-1_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
[...]
19 | class InstanceSettings
| ^~~~~~~~~~~~~~~~
In file included from /build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:16:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/InstanceSettings.h:19:7: warning: ‘tvheadend::InstanceSettings’ declared with greater visibility than the type of its field ‘tvheadend::InstanceSettings::m_instance’ [-Wattributes]
19 | class InstanceSettings
| ^~~~~~~~~~~~~~~~
[ 65%] Building CXX object CMakeFiles/pvr.hts.dir/src/tvheadend/InstanceSettings.cpp.o
/usr/bin/c++ -DADDON_GLOBAL_VERSION_GENERAL_USED -DADDON_GLOBAL_VERSION_MAIN_USED -DADDON_GLOBAL_VERSION_NETWORK_USED -DADDON_GLOBAL_VERSION_TOOLS_USED -DADDON_INSTANCE_VERSION_INPUTSTREAM_USED -DADDON_INSTANCE_VERSION_PVR_USED -DBUILD_KODI_ADDON -Dpvr_hts_EXPORTS -I/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/lib -g -O2 -ffile-prefix-map=/build/reproducible-path/kodi-pvr-hts-21.2.6+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++17 -fPIC -DTARGET_POSIX -DTARGET_LINUX -D_GNU_SOURCE -DHAVE_LINUX_UDMABUF=1 -DHAVE_LINUX_DMA_HEAP=1 -DHAVE_LINUX_DMA_BUF=1 -DHAVE_MKOSTEMP=1 -DHAVE_LINUX_MEMFD=1 -DHAVE_STATX=1 -DHAVE_SSE=1 -DHAVE_SSE2=1 -DHAVE_SSE3=1 -DHAVE_SSSE3=1 -DHAVE_SSE4_1=1 -MD -MT CMakeFiles/pvr.hts.dir/src/tvheadend/InstanceSettings.cpp.o -MF CMakeFiles/pvr.hts.dir/src/tvheadend/InstanceSettings.cpp.o.d -o CMakeFiles/pvr.hts.dir/src/tvheadend/InstanceSettings.cpp.o -c /build/reprodu
cible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/InstanceSettings.cpp
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In constructor ‘tvheadend::HTSPVFS::HTSPVFS(const std::shared_ptr<tvheadend::InstanceSettings>&, tvheadend::HTSPConnection&)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:37:5: error: class ‘tvheadend::HTSPVFS’ does not have any field named ‘m_fileId’
37 | m_fileId(0),
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘void tvheadend::HTSPVFS::RebuildState()’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:53:7: error: ‘m_fileId’ was not declared in this scope
53 | if (m_fileId != 0)
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘void tvheadend::HTSPVFS::Close()’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:90:7: error: ‘m_fileId’ was not declared in this scope
90 | if (m_fileId != 0)
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:94:3: error: ‘m_fileId’ was not declared in this scope
94 | m_fileId = 0;
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘int64_t tvheadend::HTSPVFS::Read(unsigned char*, unsigned int, bool)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:105:8: error: ‘m_fileId’ was not declared in this scope
105 | if (!m_fileId)
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘long long int tvheadend::HTSPVFS::Seek(long long int, int, bool)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:130:7: error: ‘m_fileId’ was not declared in this scope
130 | if (m_fileId == 0)
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘long long int tvheadend::HTSPVFS::Size()’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:170:27: error: ‘m_fileId’ was not declared in this scope
170 | htsmsg_add_u32(m, "id", m_fileId);
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘bool tvheadend::HTSPVFS::SendFileOpen(bool)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:248:32: error: ‘m_fileId’ was not declared in this scope
248 | if (htsmsg_get_u32(m, "id", &m_fileId))
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:257:10: error: ‘m_fileId’ was not declared in this scope
257 | return m_fileId > 0;
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘void tvheadend::HTSPVFS::SendFileClose()’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:264:27: error: ‘m_fileId’ was not declared in this scope
264 | htsmsg_add_u32(m, "id", m_fileId);
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘long long int tvheadend::HTSPVFS::SendFileSeek(int64_t, int, bool)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:290:27: error: ‘m_fileId’ was not declared in this scope
290 | htsmsg_add_u32(m, "id", m_fileId);
| ^~~~~~~~
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp: In member function ‘int64_t tvheadend::HTSPVFS::SendFileRead(unsigned char*, unsigned int)’:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/HTSPVFS.cpp:340:27: error: ‘m_fileId’ was not declared in this scope
340 | htsmsg_add_u32(m, "id", m_fileId);
| ^~~~~~~~
[ 67%] Building CXX object CMakeFiles/pvr.hts.dir/src/tvheadend/Subscription.cpp.o
/usr/bin/c++ -DADDON_GLOBAL_VERSION_GENERAL_USED -DADDON_GLOBAL_VERSION_MAIN_USED -DADDON_GLOBAL_VERSION_NETWORK_USED -DADDON_GLOBAL_VERSION_TOOLS_USED -DADDON_INSTANCE_VERSION_INPUTSTREAM_USED -DADDON_INSTANCE_VERSION_PVR_USED -DBUILD_KODI_ADDON -Dpvr_hts_EXPORTS -I/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/lib -g -O2 -ffile-prefix-map=/build/reproducible-path/kodi-pvr-hts-21.2.6+ds=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++17 -fPIC -DTARGET_POSIX -DTARGET_LINUX -D_GNU_SOURCE -DHAVE_LINUX_UDMABUF=1 -DHAVE_LINUX_DMA_HEAP=1 -DHAVE_LINUX_DMA_BUF=1 -DHAVE_MKOSTEMP=1 -DHAVE_LINUX_MEMFD=1 -DHAVE_STATX=1 -DHAVE_SSE=1 -DHAVE_SSE2=1 -DHAVE_SSE3=1 -DHAVE_SSSE3=1 -DHAVE_SSE4_1=1 -MD -MT CMakeFiles/pvr.hts.dir/src/tvheadend/Subscription.cpp.o -MF CMakeFiles/pvr.hts.dir/src/tvheadend/Subscription.cpp.o.d -o CMakeFiles/pvr.hts.dir/src/tvheadend/Subscription.cpp.o -c /build/reproducible-path/k
odi-pvr-hts-21.2.6+ds/src/tvheadend/Subscription.cpp
In file included from /build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/InstanceSettings.cpp:8:
/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/src/tvheadend/InstanceSettings.h:19:7: warning: ‘tvheadend::InstanceSettings’ declared with greater visibility than the type of its field ‘tvheadend::InstanceSettings::m_instance’ [-Wattributes]
19 | class InstanceSettings
| ^~~~~~~~~~~~~~~~
make[3]: *** [CMakeFiles/pvr.hts.dir/build.make:348: CMakeFiles/pvr.hts.dir/src/tvheadend/HTSPVFS.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:145: CMakeFiles/pvr.hts.dir/all] Error 2
make[2]: Leaving directory '/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:159: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/kodi-pvr-hts-21.2.6+ds/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:11: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
Reply to: