problems importing from /usr/lib/pyshared/

Discussion in 'Python' started by Harold, Jan 10, 2013.

  1. Harold

    Harold Guest

    Dear all,

    I recently upgraded my system from ubuntu 11.4 to 12.4 and since run into an issue when trying to import several packages in python2.7, e.g.

    harold@ubuntu:~$ python -c 'import gtk'
    Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py", line 30,in <module>
    import gobject as _gobject
    File "/usr/share/pyshared/gobject/__init__.py", line 26, in <module>
    from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \
    File "/usr/share/pyshared/glib/__init__.py", line 22, in <module>
    from glib._glib import *
    ImportError: No module named _glib

    the same, for example, with pysvn:

    harold@ubuntu:~$ python -c 'import pysvn'
    Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/share/pyshared/pysvn/__init__.py", line 99, in <module>
    import _pysvn_2_7
    ImportError: No module named _pysvn_2_7

    After playing around a bit, I realized that I can import said packages without problems, if I delete /usr/lib/pyshared from the python path:

    >>> import sys
    >>> sys.path

    ['', '/usr/share/pyshared', '/home/harold', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PIL', '/usr/lib/python2.7/dist-packages/gst-0.10', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '/usr/lib/python2.7/dist-packages/ubuntuone-client', '/usr/lib/python2.7/dist-packages/ubuntuone-control-panel', '/usr/lib/python2.7/dist-packages/ubuntuone-couch', '/usr/lib/python2.7/dist-packages/ubuntuone-installer', '/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol', '/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode']
    >>> del sys.path[1]
    >>> import gtk
    >>> import pysvn
    >>>


    Is /usr/lib/pyshared supposed to be in the python path? If not, how can I ensure that it is not included? Where is PYTHONPATH initialized by default, anyway?

    Thanks, harold.
    Harold, Jan 10, 2013
    #1
    1. Advertising

  2. Harold <> writes:

    > I recently upgraded my system from ubuntu 11.4 to 12.4 and since run into an issue when trying to import several packages in python2.7, e.g.
    >
    > harold@ubuntu:~$ python -c 'import gtk'
    > Traceback (most recent call last):
    > File "<string>", line 1, in <module>
    > File "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py", line 30, in <module>
    > import gobject as _gobject
    > File "/usr/share/pyshared/gobject/__init__.py", line 26, in <module>
    > from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \
    > File "/usr/share/pyshared/glib/__init__.py", line 22, in <module>
    > from glib._glib import *
    > ImportError: No module named _glib


    Ubuntu 12 has introduced important changes with respect to "glib" (and
    depending packages). In fact, there are now two quite incompatible
    implementations - the old "static" one and a new "dynamic" one.
    It looks as if in your case, old and new implementations were mixed.

    I had a similar problem when upgrading to "Ubuntu 12.4". In my case,
    it turned out that my (custom) "PYTHONPATH" setting was responsible for
    getting into the incompatibility.


    The new way to use "gtk" is via the "gi" (probable "gnome interface")
    module. It looks like:

    from gi.repository import Gtk,GdkPixbuf,GObject,Pango,Gdk,Gio
    Dieter Maurer, Jan 12, 2013
    #2
    1. Advertising

  3. Harold

    Harold Guest

    Thank you Dieter,

    > Ubuntu 12 has introduced important changes with respect to "glib" (and
    > depending packages). In fact, there are now two quite incompatible
    > implementations - the old "static" one and a new "dynamic" one.
    > It looks as if in your case, old and new implementations were mixed.
    >
    > I had a similar problem when upgrading to "Ubuntu 12.4". In my case,
    > it turned out that my (custom) "PYTHONPATH" setting was responsible for
    > getting into the incompatibility.
    >
    > The new way to use "gtk" is via the "gi" (probable "gnome interface")
    > module. It looks like:
    >
    > from gi.repository import Gtk,GdkPixbuf,GObject,Pango,Gdk,Gio


    I will investigate this gi module. As for my import problem, it turned out that it was my own fault: following some recommendation on the web, I had added /usr/share/pyshared to the python path in ~/.profile and forgot to logout and in again after undoing this change. Everything works fine again, and I am ready to explore the new modules.
    Harold, Jan 12, 2013
    #3
  4. Harold

    Harold Guest

    Thank you Dieter,

    > Ubuntu 12 has introduced important changes with respect to "glib" (and
    > depending packages). In fact, there are now two quite incompatible
    > implementations - the old "static" one and a new "dynamic" one.
    > It looks as if in your case, old and new implementations were mixed.
    >
    > I had a similar problem when upgrading to "Ubuntu 12.4". In my case,
    > it turned out that my (custom) "PYTHONPATH" setting was responsible for
    > getting into the incompatibility.
    >
    > The new way to use "gtk" is via the "gi" (probable "gnome interface")
    > module. It looks like:
    >
    > from gi.repository import Gtk,GdkPixbuf,GObject,Pango,Gdk,Gio


    I will investigate this gi module. As for my import problem, it turned out that it was my own fault: following some recommendation on the web, I had added /usr/share/pyshared to the python path in ~/.profile and forgot to logout and in again after undoing this change. Everything works fine again, and I am ready to explore the new modules.
    Harold, Jan 12, 2013
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. John Salerno
    Replies:
    30
    Views:
    1,932
    Stephan Kuhagen
    Aug 10, 2006
  2. Durduran
    Replies:
    10
    Views:
    518
    Durduran
    Jul 30, 2007
  3. Yves Dorfsman

    #!/usr/bin/env python vs. #!/usr/bin/python

    Yves Dorfsman, May 2, 2008, in forum: Python
    Replies:
    27
    Views:
    1,966
    Tim Roberts
    May 10, 2008
  4. TsanChung
    Replies:
    4
    Views:
    1,200
    TsanChung
    Sep 21, 2008
  5. anne001
    Replies:
    1
    Views:
    391
Loading...

Share This Page