Bug#851881: yelp: FTBFS randomly (depending on dbus being installed or not in host machine)

Santiago Vila sanvila at debian.org
Thu Jan 19 15:23:31 UTC 2017


Package: src:yelp
Version: 3.22.0-1
Severity: important

Dear maintainer:

I tried to build this package in stretch with "dpkg-buildpackage -B"
but it failed:

--------------------------------------------------------------------------------
[...]
 debian/rules build-arch
dh build-arch --with gnome
   dh_testdir -a
   dh_update_autotools_config -a
   dh_autoreconf -a
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'.
libtoolize: copying file 'build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:17: installing 'build-aux/compile'

[... snipped ...]

gcc -DHAVE_CONFIG_H -I.  -I./libyelp -DG_LOG_DOMAIN=\"Yelp\" -DDATADIR=\""/usr/share"\" -DLOCALEDIR=\""/usr/share/locale"\" -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -I/usr/include/gtk-3.0/unix-print -I/usr/include/webkitgtk-4.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/webkitgtk-4.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fno-strict-aliasing -Wall -Wextra -Wundef -Wnested-externs -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wno-unused-parameter -Wno-error=unused-parameter -Wno-missing-field-initializers -Wno-error=missing-field-initializers -Wdeclaration-after-statement -Wformat=2 -Wold-style-definition -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wimplicit-function-declaration -Wreturn-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -c -o src/yelp-yelp.o `test -f 'src/yelp.c' || echo './'`src/yelp.c
/bin/bash ./libtool  --tag=CC   --mode=link gcc -pthread -I/usr/include/gtk-3.0/unix-print -I/usr/include/webkitgtk-4.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/webkitgtk-4.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fno-strict-aliasing -Wall -Wextra -Wundef -Wnested-externs -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wno-unused-parameter -Wno-error=unused-parameter -Wno-missing-field-initializers -Wno-error=missing-field-initializers -Wdeclaration-after-statement -Wformat=2 -Wold-style-definition -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wimplicit-function-declaration -Wreturn-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wl,--no-as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,-O1 -Wl,--as-needed -o yelp src/yelp-yelp-application.o src/yelp-yelp-window.o src/yelp-yelp.o libyelp/libyelp.la -lbz2 -llzma -lgio-2.0 -lxslt -lxml2 -lexslt -lxslt -lxml2 -lsqlite3 -lwebkit2gtk-4.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -ljavascriptcoregtk-4.0 -lglib-2.0 
libtool: link: gcc -pthread -I/usr/include/gtk-3.0/unix-print -I/usr/include/webkitgtk-4.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/webkitgtk-4.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fno-strict-aliasing -Wall -Wextra -Wundef -Wnested-externs -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wno-unused-parameter -Wno-error=unused-parameter -Wno-missing-field-initializers -Wno-error=missing-field-initializers -Wdeclaration-after-statement -Wformat=2 -Wold-style-definition -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wimplicit-function-declaration -Wreturn-type -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wl,--no-as-needed -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,-z -Wl,defs -Wl,-O1 -Wl,--as-needed -o .libs/yelp src/yelp-yelp-application.o src/yelp-yelp-window.o src/yelp-yelp.o  libyelp/.libs/libyelp.so -lbz2 -llzma -lexslt -lxslt -lxml2 /usr/lib/x86_64-linux-gnu/libsqlite3.so -lwebkit2gtk-4.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -ljavascriptcoregtk-4.0 -lglib-2.0 -pthread
LC_ALL=C /usr/bin/intltool-merge  -d -u -c ./po/.intltool-merge-cache ./po yelp.desktop.in yelp.desktop
Generating and caching the translation database
Merging translations into yelp.desktop.
cd ./docs/libyelp && make  all
make[5]: Entering directory '/<<PKGBUILDDIR>>/docs/libyelp'
if test "/<<PKGBUILDDIR>>/docs/libyelp" != "/<<PKGBUILDDIR>>/docs/libyelp" ; then \
    files=`echo version.xml  libyelp-docs.xml libyelp-sections.txt libyelp-overrides.txt libyelp.types`; \
    if test "x$files" != "x" ; then \
        for file in $files ; do \
            destdir=`dirname /<<PKGBUILDDIR>>/docs/libyelp/$file`; \
            test -d "$destdir" || mkdir -p "$destdir"; \
            test -f /<<PKGBUILDDIR>>/docs/libyelp/$file && \
                cp -pf /<<PKGBUILDDIR>>/docs/libyelp/$file /<<PKGBUILDDIR>>/docs/libyelp/$file || true; \
        done; \
    fi; \
fi
touch setup-build.stamp
_source_dir='' ; \
for i in ../../libyelp ; do \
    _source_dir="${_source_dir} --source-dir=$i" ; \
done ; \
gtkdoc-scan --module=libyelp --ignore-headers="yelp-common-types.h yelp-debug.h yelp-types.h ../../libyelp/yelp-bz2-decompressor.h ../../libyelp/yelp-lzma-decompressor.h ../../libyelp/yelp-magic-decompressor.h" ${_source_dir} --deprecated-guards="G_DISABLE_DEPRECATED" --rebuild-types 
if grep -l '^..*$' libyelp.types > /dev/null 2>&1 ; then \
    scanobj_options=""; \
    gtkdoc-scangobj 2>&1 --help | grep  >/dev/null "\-\-verbose"; \
    if test "$?" = "0"; then \
        if test "x" = "x1"; then \
            scanobj_options="--verbose"; \
        fi; \
    fi; \
    CC="/bin/bash ../../libtool --tag=CC --mode=compile gcc  -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g" LD="/bin/bash ../../libtool --tag=CC --mode=link gcc -lgobject-2.0 -lglib-2.0  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g  -Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,-O1 -Wl,--as-needed" RUN="/bin/bash ../../libtool --mode=execute" CFLAGS="-pthread -I/usr/include/gtk-3.0/unix-print -I/usr/include/webkitgtk-4.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libsoup-2.4 -I/usr/include/libxml2 -I/usr/include/webkitgtk-4.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I../../libyelp -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g" LDFLAGS="-lbz2 -llzma -lgio-2.0 -lxslt -lxml2 -lexslt -lxslt -lxml2 -lsqlite3 -lwebkit2gtk-4.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -ljavascriptcoregtk-4.0 -lglib-2.0 ../../libyelp/libyelp.la -Wl,-z,relro -Wl,-z,now -Wl,-z,defs -Wl,-O1 -Wl,--as-needed" \
    gtkdoc-scangobj  $scanobj_options --module=libyelp; \
else \
    for i in libyelp.args libyelp.hierarchy libyelp.interfaces libyelp.prerequisites libyelp.signals ; do \
        test -f $i || touch $i ; \
    done \
fi

(process:5385): Gtk-CRITICAL **: gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

** (process:5385): WARNING **: Unable to connect to dbus: Cannot spawn a message bus without a machine-id: Unable to load /var/lib/dbus/machine-id or /etc/machine-id: Failed to open file '/var/lib/dbus/machine-id': No such file or directory
E: Build killed with signal TERM after 60 minutes of inactivity
--------------------------------------------------------------------------------

I've put both a successful build log and a failed build log here:

https://people.debian.org/~sanvila/build-logs/yelp/

Please try this:

diff -ru yelp_3.22.0-1_amd64-20170119T105259Z yelp_3.22.0-1_amd64-20170119T104801Z

[ First file is successful build, second file is failed build ]

and you will see the following:

@@ -1640,11 +1953,13 @@
 SCHROOT_COMMAND=env
 SCHROOT_GID=924
 SCHROOT_GROUP=buildd
-SCHROOT_SESSION_ID=stretch-685408fc-7f0f-4043-9595-0a9e40cda323
+SCHROOT_SESSION_ID=stretch-4da9c57a-c393-4797-a3e4-84a8748da71a
 SCHROOT_UID=924
 SCHROOT_USER=buildd
 SHELL=/bin/sh
 USER=buildd
+XDG_RUNTIME_DIR=/run/user/924
+XDG_SESSION_ID=1124

The first machine (linode2) happens to have dbus installed.
The second machine (leaseweb1) happens to *not* have dbus installed.

I'm talking about the host machine itself, not the chroots,
which of course have minimal packages installed.

So: Does the first build succeeds because, by pure chance, I had dbus
installed in the host machine?

Can you build this package successfully on a machine not having
any dbus package installed?

Is this just a missing build-depends on dbus-something?

Thanks.



More information about the pkg-gnome-maintainers mailing list