Bug#760879: FTBFS on sparc: recipe for target 'src/gudev/GUdev-1.0.gir' failed

Sjoerd Simons sjoerd at luon.net
Sun Sep 14 18:51:42 BST 2014


System uses gold as a linker by default, when using bfd the issue goes away.
(note that this is only an issue on sparc all other architectures build fine)

On Mon, Sep 08, 2014 at 10:11:37PM +0200, Michael Biebl wrote:
> g-ir-scanner: link: /bin/bash ./libtool --mode=link --tag=CC cc -o /«PKGBUILDDIR»/build-deb/tmp-introspect9gyvNs/GUdev-1.0 -export-dynamic -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro /«PKGBUILDDIR»/build-deb/tmp-introspect9gyvNs/GUdev-1.0.o -L. libgudev-1.0.la -lgio-2.0 -lgobject-2.0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0
> libtool: link: cc -o /«PKGBUILDDIR»/build-deb/tmp-introspect9gyvNs/.libs/GUdev-1.0 -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z -Wl,relro /«PKGBUILDDIR»/build-deb/tmp-introspect9gyvNs/GUdev-1.0.o -Wl,--export-dynamic -pthread -Wl,--export-dynamic  -L. ./.libs/libgudev-1.0.so -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -pthread
> 
> (process:21790): GLib-GObject-WARNING **: type name ')' is too short

The relevent code hitting the above is from the generated
src/gudev/gudevenumtypes.c (g_udev_device_type_get_type implementation):
  g_enum_register_static (g_intern_static_string ("GUdevDeviceType"), values);

Looking in gdb, the g_enum_register_static function gets called with ")" as
first argument. The same problem occurs when changing the above to just:
  g_enum_register_static ("GUdevDeviceType", values);

Adding some debug prints in g_udev_device_type_get_type using g_message with
static strings e.g.:
  g_message("HERE");

Shows the same issue, the debug message is printed but with a different strings
(and as a side-effect of the added code g_enum_register_static also gets called
with a different string value!). So clearly when linked with gold something
goes haywire wrt. static string values...

  Sjoerd
-- 
Murphy was an optimist.




More information about the Pkg-systemd-maintainers mailing list