Menu

#871 Debian Bug#957112: crossfire-client: ftbfs with GCC-10

2.x
closed
nobody
None
5
2021-02-27
2020-04-17
Rick Tanner
No

Cross posting the bug report from Debian to here.

Package: src:crossfire-client
Version: 1.74.0-1
Severity: normal
Tags: sid bullseye
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-10

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-10/g++-10, but succeeds to build with gcc-9/g++-9. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc10-20200225/crossfire-client_1.74.0-1_unstable_gcc10.log
The last lines of the build log are at the end of this report.

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

apt-get -t=experimental install g++

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-10/porting_to.html

[...]
236 | void gtk_type_init (GTypeDebugFlags debug_flags);
| ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:24,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:23,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /<<pkgbuilddir>>/common/client.h:26,
from /<<pkgbuilddir>>/gtk-v2/src/stats.c:19:
/usr/include/glib-2.0/gobject/gtype.h:679:1: note: declared here
679 | {
| ^
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
from /usr/include/gtk-2.0/gtk/gtk.h:126,
from /<<pkgbuilddir>>/gtk-v2/src/stats.c:22:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
73 | GTimeVal last_popdown;
| ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /<<pkgbuilddir>>/common/client.h:16,
from /<<pkgbuilddir>>/gtk-v2/src/stats.c:19:
/usr/include/glib-2.0/glib/gtypes.h:551:8: note: declared here
551 | struct _GTimeVal
| ^~~~~~~~~
/<<pkgbuilddir>>/gtk-v2/src/stats.c: In function ‘draw_stats’:
/<<pkgbuilddir>>/gtk-v2/src/stats.c:685:46: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 249 [-Wformat-truncation=]
685 | snprintf(buff, sizeof(buff), "Range: %s", cpl.range);
| ^~ ~~~~~~~~~
In file included from /usr/include/stdio.h:867,
from /<<pkgbuilddir>>/common/client.h:18,
from /<<pkgbuilddir>>/gtk-v2/src/stats.c:19:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:67:10: note: ‘__builtinsnprintfchk’ output between 8 and 263 bytes into a destination of size 256
67 | return
builtinsnprintfchk (s, __n, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68 | __bos (__s), __fmt, __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[100%] Linking C executable crossfire-client-gtk2
cd /<<pkgbuilddir>>/obj-x86_64-linux-gnu/gtk-v2/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/crossfire-client-gtk2.dir/link.txt --verbose=1
/usr/bin/cc -g -O2 -fdebug-prefix-map=/<<pkgbuilddir>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wl,-z,relro -rdynamic CMakeFiles/crossfire-client-gtk2.dir/sound-vala.c.o CMakeFiles/crossfire-client-gtk2.dir/account.c.o CMakeFiles/crossfire-client-gtk2.dir/config.c.o CMakeFiles/crossfire-client-gtk2.dir/create_char.c.o CMakeFiles/crossfire-client-gtk2.dir/image.c.o CMakeFiles/crossfire-client-gtk2.dir/info.c.o CMakeFiles/crossfire-client-gtk2.dir/inventory.c.o CMakeFiles/crossfire-client-gtk2.dir/keys.c.o CMakeFiles/crossfire-client-gtk2.dir/magicmap.c.o CMakeFiles/crossfire-client-gtk2.dir/main.c.o CMakeFiles/crossfire-client-gtk2.dir/map.c.o CMakeFiles/crossfire-client-gtk2.dir/menubar.c.o CMakeFiles/crossfire-client-gtk2.dir/metaserver.c.o CMakeFiles/crossfire-client-gtk2.dir/opengl.c.o CMakeFiles/crossfire-client-gtk2.dir/pickup.c.o CMakeFiles/crossfire-client-gtk2.dir/png.c.o CMakeFiles/crossfire-client-gtk2.dir/sdl.c.o CMakeFiles/crossfire-client-gtk2.dir/skills.c.o CMakeFiles/crossfire-client-gtk2.dir/sound.c.o CMakeFiles/crossfire-client-gtk2.dir/spells.c.o CMakeFiles/crossfire-client-gtk2.dir/stats.c.o -o crossfire-client-gtk2 ../../common/libcfclient.a -lcurl -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lpangoft2-1.0 -lpango-1.0 -lfontconfig -lfreetype -lgio-2.0 -lgobject-2.0 -lglib-2.0 -llua5.1 -lm -lGL -lGLU -lpng -lz -lSDL_image -lSDL -lSM -lICE -lX11 -lXext
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/config.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/create_char.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/image.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/info.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/inventory.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/keys.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/magicmap.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/main.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/map.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/menubar.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/metaserver.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/opengl.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/pickup.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/sdl.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/skills.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here /usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/spells.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition ofwindow_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
/usr/bin/ld: CMakeFiles/crossfire-client-gtk2.dir/stats.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: multiple definition of `window_xml_file'; CMakeFiles/crossfire-client-gtk2.dir/account.c.o:./obj-x86_64-linux-gnu/gtk-v2/src/./gtk-v2/src/main.h:37: first defined here
collect2: error: ld returned 1 exit status
make[3]: *** [gtk-v2/src/CMakeFiles/crossfire-client-gtk2.dir/build.make:408: gtk-v2/src/crossfire-client-gtk2] Error 1
make[3]: Leaving directory '/<<pkgbuilddir>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:240: gtk-v2/src/CMakeFiles/crossfire-client-gtk2.dir/all] Error 2
make[2]: Leaving directory '/<<pkgbuilddir>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:166: all] Error 2
make[1]: Leaving directory '/<<pkgbuilddir>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j4 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:4: build] Error 25
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2</pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir></pkgbuilddir>

Discussion

  • SilverNexus

    SilverNexus - 2020-10-04
    • status: open --> patched
     
  • SilverNexus

    SilverNexus - 2020-10-04

    Add an #ifndef wrapper around the contents of main.h to prevent multiple inclusions.

    I think that should fix the error here.

     
  • Nicolas Weeger

    Nicolas Weeger - 2021-02-27
    • status: patched --> closed
     

Log in to post a comment.

MongoDB Logo MongoDB