dbus-glib-0.100 crashing on make in examples

Simon McVittie simon.mcvittie at collabora.co.uk
Fri Jul 20 07:16:35 PDT 2012


On 19/07/12 23:32, Mark Mikofski wrote:
> The ./configure runs fine, but the make fails when it makes in dbus/examples

Please open a bug report on bugs.freedesktop.org when you encounter a bug.

> $ dbus-binding-tool.exe --mode=glib-server --prefix=some_object
> --output=example-service-glue.h
> ./dbus/dbus-glib-0.100/dbus/examples/example-service.xml
> 
> Compilation failed: Failed to execute child process (No such file or
> directory)

That's not what examples/Makefile.am runs, and if you don't have the
installed dbus-binding-tool.exe on your $PATH, that command will indeed
not work.

What examples/Makefile.am actually runs to get example-service-glue.h is:

$(LIBTOOL) --mode=execute $(DBUS_BINDING_TOOL) --prefix=some_object
--mode=glib-server --output=example-service-glue.h
$(srcdir)/example-service.xml

where the default value of $(DBUS_BINDING_TOOL) points to the
just-compiled version from the built tree, so it should work:

AC_ARG_WITH(dbus-binding-tool,
  AS_HELP_STRING([--with-dbus-binding-tool=[filename]],[Use external
dbus-binding-tool program]),

[DBUS_BINDING_TOOL=$withval],[DBUS_BINDING_TOOL=\$\(top_builddir\)/dbus/dbus-binding-tool])
AC_SUBST(DBUS_BINDING_TOOL)

For Windows you might need to change the default in configure.ac to end
with $(EXEEXT) (which is empty on Unix and ".exe" on Windows), and
re-run autoconf and configure. To test whether that works without having
to re-run autoconf, you could configure like this:

    ./configure ... \

--with-dbus-binding-tool=\$\(top_builddir\)/dbus/dbus-binding-tool\$\(EXEEXT\)

(keep the second line as one long line)

> to solve this problem below, I had to comment out "examples" in
> dbus/Makefile.
...
> But since this autogenerated each user will have to manually
> change it.

FYI, dbus/Makefile.am is the source code for dbus/Makefile.
dbus/Makefile.in is generated from dbus/Makefile.am by Automake, and
dbus/Makefile is generated from dbus/Makefile.in by configure.

    S


More information about the dbus mailing list