[Sugar-devel] Bug 1240354 - SoaS live x86_64 20150706 does not login from live system user

Sam P. sam at sam.today
Fri Sep 4 07:38:05 EDT 2015

Hi James,

On Fri, Sep 4, 2015 at 8:44 AM James Cameron <quozl at laptop.org> wrote:

> @All, what is main.py and where are lines 1818 and 2637?
> src/jarabe/main.py is much smaller, only 425 lines.

That is the only main.py there is :)  Maybe it is an issue with gir?  It
isn't something that seems out of the ordinary anyway.

> Some other diagnosis methods to suggest:

I am running fedora rawhide (24).  I reinstalled the packages (dnf
reinstall sugar sugar-toolkit-gtk3) and they were reinstalled.  Rawhide
uses the fc23 packages for sugar, so hopefully this is relevant.

Sugar-runner gives the logs:

   ** (main.py:9674): WARNING **: Failed to load shared library
'libsugarext.so.0' referenced by the typelib: /lib64/libsugarext.so.0:
undefined symbol: sugar_event_controller_get_state
   GLib.Error: g-invoke-error-quark: Could not locate acme_volume_alsa_new:
'acme_volume_alsa_new': /lib64/libsugar-eventcontroller.so.0: undefined
symbol: acme_volume_alsa_new (1)

Interestingly it is trying to import the volume function from
sugar-eventcontroller.  It is actually in libsugarext.  Maybe that is
related to our issue?

> a.  in a fresh python process, try the relevant imports, e.g.
>     from jarabe.view import gesturehandler
>     from jarabe.model.sound import sound

The 1st imports fine.  However, attempting to create a GestureHandler
(hence invoking the functions in the library) cause an exception:

The 2nd fails on import with:

    g-invoke-error-quark: Could not locate acme_volume_alsa_new:
'acme_volume_alsa_new': /lib64/libsugar-eventcontroller.so.0: undefined
symbol: acme_volume_alsa_new (1)

> b.  verify a symlink is present from /usr/lib/libsugarext.so.0 to
>     libsugarext.so.0.0.0 (or equivalent functionality, as this is a
>     guess from my experience with F18),

Yes, it is there.

> c.  use strings to check libsugarext.so.0, see if
>     sugar_event_controller_get_state is present,
>     strings /usr/lib/libsugarext.so.0 | \
>         grep sugar_event_controller_get_state

Yes, that works cool.  The volume function is also in the libsugarext as

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20150904/43337f17/attachment.html>

More information about the Sugar-devel mailing list