I found an easy workaround: I modified my copy of
gnome-suites-2.91.2.modules to pass --disable-gudev when configuring the
gvfs module.  Not sure quite what I'm giving up by disabling gudev in GVFS,
but at least I was able to keep building.

I also had to add gsettings-desktop-schemas as a dependency of
gnome-desktop-3 in the same modules file.  With those changes, my build is
now chugging along again.  Maybe in a few hours I'll have successfully built
2.91.2.  :)

adam

On Sun, Nov 14, 2010 at 10:00 AM, Adam Dingle <[email protected]> wrote:

> I'm trying to build GNOME 2.91.2 using JHBuild on Ubuntu 10.10.  Many
> modules built successfully, and then the gvfs module failed to build with
> this error:
>
> make[4]: Entering directory `/home/adam/gnome/src/gvfs-1.6.5/daemon'
>   CCLD   gvfsd-gphoto2
> /home/adam/gnome/install/lib64/libgio-2.0.so: undefined reference to
> `g_source_get_time'
>
> I investigated a bit.  The failing linker command line includes these
> shared libraries (among many others):
>
> /home/adam/gnome/install/lib64/libgio-2.0.so
> /usr/lib/libgudev-1.0.so
> /usr/lib/libudev.so
> /usr/lib/libglib-2.0.so
>
> The undefined reference is occurring because g_source_get_time is a new
> symbol available only in the newly built libglib-2.0.so, but we're linking
> with /usr/lib/libglib-2.0.so, which is an older glib that comes from the
> distro itself.  This happens because gvfs depends on gudev, and gudev is
> found only in /usr/lib; jhbuild hasn't built it.
>
> gudev itself is part of the udev source tarball.
> gnome-external-deps-2.91.2.modules pulls in udev-111, which is a fairly
> ancient udev from 2007 (see
> http://www.kernel.org/pub/linux/utils/kernel/hotplug/).  That was before
> gudev was included in udev.  So jhbuild is building this old udev, which
> doesn't include gudev, so the gvfs build pulls in gudev from my distro,
> which causes the distro's libglib to be linked, which causes the linker
> error.
>
> Questions:
>
> - Why does the external dependencies list reference such an old udev, which
> doesn't include gudev?
> - I'm going to try to work around this by editing the external dependencies
> to reference a newer udev.  Is this the right approach, or is there some
> better workaround?
> - Presumably 2.91.2 was released only after the release team had
> successfully build on some distro.  Why did this gvfs/gudev problem not
> occur in that case?
>
> adam
>
>
_______________________________________________
gnome-love mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gnome-love

Reply via email to