On Sat, Oct 23, 2021 at 09:07:10PM +0200, Lucas Nussbaum wrote: > Source: mtr > Version: 0.94-2 > Severity: serious > Justification: FTBFS > Tags: bookworm sid ftbfs
That's an error in your compiler. A printf-like function often has a string litteral specifying the format printf ("a = %d\n", a); But it is still just a string. So when I want to print something either in hex or in dec depending on a user-setting. I could do something like: printf ("a = "); printf (theformat, a); printf ("\n"); Now this has become three statements. To compact this a bit more, we might do: sprintf (format, "a = %s\n", theformat); // format is %d or %x or... set by user printf (format, a); I think this is perfectly legal C code and your compiler doesn't like it. It doesn't just warn, but gives an error. Roger. > Hi, > > During a rebuild of all packages in sid, your package failed to build > on amd64. > > > Relevant part (hopefully): > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -pthread > > -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include > > -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 > > -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 > > -I/usr/include/x86_64-linux-gnu -I/usr/include/pango-1.0 > > -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/libmount > > -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo > > -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 > > -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/uuid > > -I/usr/include/freetype2 -I/usr/include/libpng16 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o ui/mtr-curses.o `test > > -f 'ui/curses.c' || echo '../'`ui/curses.c > > ../ui/curses.c: In function ‘mtr_curses_hosts’: > > ../ui/curses.c:435:17: error: format not a string literal and no format > > arguments [-Werror=format-security] > > 435 | printw(fmt_ipinfo(ctl, addr)); > > | ^~~~~~ > > ../ui/curses.c:488:21: error: format not a string literal and no format > > arguments [-Werror=format-security] > > 488 | printw(fmt_ipinfo(ctl, addrs)); > > | ^~~~~~ > > ../ui/curses.c: In function ‘mtr_curses_graph’: > > ../ui/curses.c:653:17: error: format not a string literal and no format > > arguments [-Werror=format-security] > > 653 | printw(fmt_ipinfo(ctl, addr)); > > | ^~~~~~ > > ../ui/curses.c: In function ‘mtr_curses_redraw’: > > ../ui/curses.c:703:5: error: format not a string literal and no format > > arguments [-Werror=format-security] > > 703 | mvprintw(1, maxx - 25, iso_time(&t)); > > | ^~~~~~~~ > > ../ui/curses.c:763:42: error: format not a string literal and no format > > arguments [-Werror=format-security] > > 763 | mvprintw(rowstat - 1, startstat, msg); > > | ^~~ > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -pthread > > -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include > > -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 > > -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 > > -I/usr/include/x86_64-linux-gnu -I/usr/include/pango-1.0 > > -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/libmount > > -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo > > -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 > > -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/uuid > > -I/usr/include/freetype2 -I/usr/include/libpng16 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o ui/mtr-gtk.o `test -f > > 'ui/gtk.c' || echo '../'`ui/gtk.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/packet.o > > ../packet/packet.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/cmdparse.o > > ../packet/cmdparse.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/command.o > > ../packet/command.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/probe.o > > ../packet/probe.c > > In file included from /usr/include/string.h:519, > > from ../packet/probe.c:31: > > In function ‘strncat’, > > inlined from ‘respond_to_probe’ at ../packet/probe.c:296:9: > > /usr/include/x86_64-linux-gnu/bits/string_fortified.h:122:10: warning: > > ‘__builtin___strncat_chk’ output may be truncated copying between 0 and > > 4095 bytes from a string of length 4095 [-Wstringop-truncation] > > 122 | return __builtin___strncat_chk (__dest, __src, __len, __bos > > (__dest)); > > | > > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > > In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37, > > from /usr/include/gtk-2.0/gtk/gtkwidget.h:36, > > from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35, > > from /usr/include/gtk-2.0/gtk/gtkbin.h:35, > > from /usr/include/gtk-2.0/gtk/gtkwindow.h:36, > > from /usr/include/gtk-2.0/gtk/gtkdialog.h:35, > > from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32, > > from /usr/include/gtk-2.0/gtk/gtk.h:33, > > from ../ui/gtk.c:31: > > /usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: ‘GTypeDebugFlags’ > > is deprecated [-Wdeprecated-declarations] > > 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:22, > > 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 /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30, > > from /usr/include/gtk-2.0/gdk/gdk.h:32, > > from /usr/include/gtk-2.0/gtk/gtk.h:32, > > from ../ui/gtk.c:31: > > /usr/include/glib-2.0/gobject/gtype.h:698:1: note: declared here > > 698 | { > > | ^ > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/timeval.o > > ../packet/timeval.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/sockaddr.o > > ../packet/sockaddr.c > > gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 > > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat > > -Werror=format-security -Wall -Wno-pointer-sign -c -o > > packet/construct_unix.o ../packet/construct_unix.c > > 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 ../ui/gtk.c:31: > > /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 /usr/include/glib-2.0/gobject/gbinding.h:28, > > from /usr/include/glib-2.0/glib-object.h:22, > > 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 /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30, > > from /usr/include/gtk-2.0/gdk/gdk.h:32, > > from /usr/include/gtk-2.0/gtk/gtk.h:32, > > from ../ui/gtk.c:31: > > /usr/include/glib-2.0/glib/gtypes.h:547:8: note: declared here > > 547 | struct _GTimeVal > > | ^~~~~~~~~ > > cc1: some warnings being treated as errors > > make[2]: *** [Makefile:1159: ui/mtr-curses.o] Error 1 > > > The full build log is available from: > http://qa-logs.debian.net/2021/10/23/mtr_0.94-2_unstable.log > > A list of current common problems and possible solutions is available at > http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! > > If you reassign this bug to another package, please marking it as > 'affects'-ing > this package. See https://www.debian.org/Bugs/server-control#affects > > If you fail to reproduce this, please provide a build log and diff it with > mine > so that we can identify if something relevant changed in the meantime. > -- ** r.e.wo...@bitwizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 ** ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** f equals m times a. When your f is steady, and your m is going down your a is going up. -- Chris Hadfield about flying up the space shuttle.