Link errors in dbus-glib binding

Richard W.M. Jones rjones at redhat.com
Wed Jan 21 14:11:35 UTC 2009


On Wed, Jan 21, 2009 at 03:57:45PM +0200, Ryan McDougall wrote:
> dbus-binding-tool-glib.o: In function `dbus_binding_tool_output_glib_server':
> /home/ryanm/Code/dbus-glib/dbus/dbus-binding-tool-glib.c:802:
> undefined reference to `_g_file_open_tmp'

This is a strange one ..  Windows programs shouldn't be calling
"g_file_open_tmp" directly.  In the glib header file glib/gfileutils.h
there is this:

  #ifdef G_OS_WIN32
  #define g_file_test g_file_test_utf8
  #define g_file_get_contents g_file_get_contents_utf8
  #define g_mkstemp g_mkstemp_utf8
  #define g_file_open_tmp g_file_open_tmp_utf8
  #endif

G_OS_WIN32 ought to be defined automatically.  I guess you could try
defining it manually for this one file.

I have verified that we export "g_file_open_tmp_utf8" in our DLL.

> /home/ryanm/Code/dbus-glib/dbus/dbus-binding-tool-glib.c:830:
> undefined reference to `_g_spawn_async_with_pipes'

Same situation as above.  The link should be happening with the
internal symbol "g_spawn_async_with_pipes_utf8".

> dbus-glib-tool.o: In function `main':
> /home/ryanm/Code/dbus-glib/dbus/dbus-glib-tool.c:392: undefined
> reference to `_g_io_channel_new_file'

As above ("g_io_channel_new_file_utf8").

> ./.libs/libdbus-gtool.a(dbus-gloader-expat.o): In function
> `description_load_from_file':
> /home/ryanm/Code/dbus-glib/dbus/dbus-gloader-expat.c:176: undefined
> reference to `_g_file_get_contents'

As above ("g_file_get_contents_utf8").

Rich.

-- 
Richard Jones, Emerging Technologies, Red Hat  http://et.redhat.com/~rjones
virt-p2v converts physical machines to virtual machines.  Boot with a
live CD or over the network (PXE) and turn machines into Xen guests.
http://et.redhat.com/~rjones/virt-p2v



More information about the mingw mailing list