#1096712 gjiten: ftbfs with GCC-15

Package:
src:gjiten
Source:
src:gjiten
Submitter:
Matthias Klose
Date:
2025-09-21 12:29:01 UTC
Severity:
normal
Tags:
#1096712#5
Date:
2025-02-17 17:15:55 UTC
From:
To:
[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/gjiten_3.1-2_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

[...]
      | ^~~~~~~~~~~~~~~~~~~~
gjiten.h:42:6: note: previous declaration of ‘gjiten_start_worddic’ with type ‘void(void)’
   42 | void gjiten_start_worddic();
      |      ^~~~~~~~~~~~~~~~~~~~
gjiten.c: In function ‘gjiten_start_worddic’:
gjiten.c:486:29: error: too many arguments to function ‘worddic_create’; expected 0, have 1
  486 |   GjWorddicWindow *window = worddic_create (app);
      |                             ^~~~~~~~~~~~~~  ~~~
In file included from gjiten.c:42:
worddic.h:54:18: note: declared here
   54 | GjWorddicWindow* worddic_create();
      |                  ^~~~~~~~~~~~~~
gjiten.c: At top level:
gjiten.c:494:1: error: conflicting types for ‘gjiten_start_kanjidic’; have ‘void(GtkApplication *)’ {aka ‘void(struct _GtkApplication *)’}
  494 | gjiten_start_kanjidic(GtkApplication *app)
      | ^~~~~~~~~~~~~~~~~~~~~
gjiten.h:43:6: note: previous declaration of ‘gjiten_start_kanjidic’ with type ‘void(void)’
   43 | void gjiten_start_kanjidic();
      |      ^~~~~~~~~~~~~~~~~~~~~
gjiten.c: In function ‘gjiten_start_kanjidic’:
gjiten.c:500:30: error: too many arguments to function ‘kanjidic_create’; expected 0, have 1
  500 |   GjKanjidicWindow *window = kanjidic_create (app);
      |                              ^~~~~~~~~~~~~~~  ~~~
In file included from gjiten.c:43:
kanjidic.h:59:19: note: declared here
   59 | GjKanjidicWindow *kanjidic_create();
      |                   ^~~~~~~~~~~~~~~
gjiten.c: In function ‘gjiten_new’:
gjiten.c:674:3: warning: ‘G_APPLICATION_FLAGS_NONE’ is deprecated: Use 'G_APPLICATION_DEFAULT_FLAGS' instead [-Wdeprecated-declarations]
  674 |   GtkApplication * app = gtk_application_new (NULL,G_APPLICATION_FLAGS_NONE);
      |   ^~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/gio/giotypes.h:30,
                 from /usr/include/glib-2.0/gio/gio.h:28,
                 from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:28,
                 from /usr/include/gtk-3.0/gdk/gdk.h:32,
                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
                 from gjiten.c:30:
/usr/include/glib-2.0/gio/gioenums.h:1556:3: note: declared here
 1556 |   G_APPLICATION_FLAGS_NONE GIO_DEPRECATED_ENUMERATOR_IN_2_74_FOR(G_APPLICATION_DEFAULT_FLAGS),
      |   ^~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:555: gjiten-gjiten.o] Error 1
make[3]: *** Waiting for unfinished jobs....
kanjidic.c: In function ‘do_kdicline’:
kanjidic.c:187:13: warning: ‘__builtin_strncat’ output may be truncated copying between 0 and 499 bytes from a string of length 499 [-Wstringop-truncation]
  187 |             strncat (kdic_line + READING * KBUFSIZE, tmpstr, KBUFSIZE - strlen (kdic_line + READING * KBUFSIZE) - 1);
      |             ^
kanjidic.c:176:13: warning: ‘__builtin_strncat’ output may be truncated copying between 0 and 499 bytes from a string of length 499 [-Wstringop-truncation]
  176 |             strncat (kdic_line + READING * KBUFSIZE, tmpstr, KBUFSIZE - strlen (kdic_line + READING * KBUFSIZE) - 1);
      |             ^
kanjidic.c:163:11: warning: ‘__builtin_strncat’ output may be truncated copying between 0 and 499 bytes from a string of length 499 [-Wstringop-truncation]
  163 |           strncat (kdic_line + READING * KBUFSIZE, tmpstr, KBUFSIZE - strlen (kdic_line + READING * KBUFSIZE) - 1);
      |           ^
kanjidic.c:156:7: warning: ‘__builtin_strncat’ output may be truncated copying between 0 and 499 bytes from a string of length 499 [-Wstringop-truncation]
  156 |       strncat (kdic_line + READING * KBUFSIZE, tmpstr, KBUFSIZE - strlen (kdic_line + READING * KBUFSIZE) - 1);
      |       ^
kanjidic.c: In function ‘kanjidic_radical_selected’:
kanjidic.c:695:7: warning: ‘__builtin_strncat’ output may be truncated copying 5 bytes from a string of length 5 [-Wstringop-truncation]
  695 |       strncat (newradline, tmpchar, 5);
      |       ^
kanjidic.c:701:25: warning: ‘__builtin_strncat’ output may be truncated copying 5 bytes from a string of length 5 [-Wstringop-truncation]
  701 |   if (removed == FALSE) strncat (newradline, radical_selected, 5); //Add the radical to the line
      |                         ^
make[3]: Leaving directory '/build/reproducible-path/gjiten-3.1/src'
make[2]: *** [Makefile:465: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/gjiten-3.1'
make[1]: *** [Makefile:395: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/gjiten-3.1'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:4: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

#1096712#14
Date:
2025-09-18 14:41:46 UTC
From:
To:
I couldn't test the build (fighting with meson/ninja), but I merged the PR request that is supposed to fix this problem

Version 3.2.1

Link: https://github.com/DarkTrick/gjiten/tree/v3.2.1

#1096712#19
Date:
2025-09-21 12:26:19 UTC
From:
To:
Control: tags -1 patch upstream fixed-upstream
Control: forwarded -1 https://github.com/DarkTrick/gjiten/commit/a49ff25b2e7143f7eda274cfe09882f226675a9e
thanks

Thanks for the pointer! JFTR, I just verified that the patch from
<https://github.com/DarkTrick/gjiten/commit/a49ff25b2e7143f7eda274cfe09882f226675a9e>
cleanly applies to the current Debian packaging and resolves the FTBFS.

Cheers,
Flo