Skip to content

Fails to build on GCC-15 #39

@rfinnie

Description

@rfinnie

Via https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1096525 :

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/digitemp_3.7.2-2_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

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

[...]
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/build/reproducible-path/digitemp-3.7.2'
rm -rf build-serial
/usr/bin/make clean
make[2]: Entering directory '/build/reproducible-path/digitemp-3.7.2'
rm -f *~ src/*~ userial/*~ userial/ds9097/*~ userial/ds9097u/*~ userial/ds2490/*~
rm -f src/digitemp.o src/device_name.o src/ds2438.o userial/crcutil.o userial/ioutil.o userial/swt1f.o userial/owerr.o userial/cnt1d.o userial/ad26.o  userial/ds9097/ownet.o userial/ds9097/linuxlnk.o userial/ds9097/linuxses.o userial/ds9097/owtran.o src/ds9097.o userial/ds9097u/ds2480ut.o userial/ds9097u/ownetu.o userial/ds9097u/owllu.o userial/ds9097u/owsesu.o userial/ds9097u/owtrnu.o userial/ds9097u/linuxlnk.o src/ds9097u.o userial/ds2490/ownet.o userial/ds2490/owtran.o userial/ds2490/usblnk.o userial/ds2490/usbses.o src/ds2490.o
rm -f core *.asc 
rm -f perl/*~ rrdb/*~ .digitemprc digitemp-3.7.2-1.spec
rm -rf digitemp-3.7.2
make[2]: Leaving directory '/build/reproducible-path/digitemp-3.7.2'
dh_clean
make[1]: Leaving directory '/build/reproducible-path/digitemp-3.7.2'
   dh_autoreconf_clean -O--buildsystem=makefile
   dh_clean -O--buildsystem=makefile
 debian/rules binary
dh binary --buildsystem=makefile
   dh_update_autotools_config -O--buildsystem=makefile
   dh_autoreconf -O--buildsystem=makefile
   dh_auto_configure -O--buildsystem=makefile
   debian/rules override_dh_auto_build
make[1]: Entering directory '/build/reproducible-path/digitemp-3.7.2'
mkdir -p build-serial/src build-serial/userial/ds9097 build-serial/userial/ds9097u
dh_auto_build --builddirectory=build-serial -- -f ../Makefile SRCDIR=.. ds9097 ds9097u
	cd build-serial && make -j8 "INSTALL=install --strip-program=true" -f ../Makefile SRCDIR=.. ds9097 ds9097u
make[2]: Entering directory '/build/reproducible-path/digitemp-3.7.2/build-serial'
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o src/digitemp.o ../src/digitemp.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o src/device_name.o ../src/device_name.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o src/ds2438.o ../src/ds2438.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/crcutil.o ../userial/crcutil.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/ioutil.o ../userial/ioutil.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/swt1f.o ../userial/swt1f.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/owerr.o ../userial/owerr.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/cnt1d.o ../userial/cnt1d.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/ad26.o ../userial/ad26.c
../src/digitemp.c:171:6: error: conflicting types for ‘free_coupler’; have ‘void(int)’
  171 | void free_coupler( int free_only )
      |      ^~~~~~~~~~~~
In file included from ../src/digitemp.c:78:
../src/digitemp.h:90:6: note: previous declaration of ‘free_coupler’ with type ‘void(void)’
   90 | void free_coupler();
      |      ^~~~~~~~~~~~
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/ds9097/ownet.o ../userial/ds9097/ownet.c
cc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/digitemp-3.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I../src -I../userial -Wdate-time -D_FORTIFY_SOURCE=2  -c -o userial/ds9097/linuxlnk.o ../userial/ds9097/linuxlnk.c
make[2]: *** [<builtin>: src/digitemp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
../userial/ds9097/linuxlnk.c: In function ‘owTouchReset’:
../userial/ds9097/linuxlnk.c:143:4: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  143 |    write(fd[portnum], &wbuff, 1);
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../userial/ds9097/linuxlnk.c:161:14: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  161 |              read(fd[portnum], &result, 1);
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../userial/ds9097/linuxlnk.c: In function ‘owTouchBlock’:
../userial/ds9097/linuxlnk.c:244:7: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  244 |       write(fd[portnum], buf, nbits2);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../userial/ds9097/linuxlnk.c: In function ‘owTouchBit’:
../userial/ds9097/linuxlnk.c:339:5: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  339 |     write( fd[portnum], &sendbit, 1 );          /* Send the bit                 */
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../userial/ds9097/linuxlnk.c:356:15: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  356 |               read(fd[portnum], &inbit, 1);
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: Leaving directory '/build/reproducible-path/digitemp-3.7.2/build-serial'
dh_auto_build: error: cd build-serial && make -j8 "INSTALL=install --strip-program=true" -f ../Makefile SRCDIR=.. ds9097 ds9097u returned exit code 2
make[1]: *** [debian/rules:12: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/digitemp-3.7.2'
make: *** [debian/rules:8: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions