Search code examples
pythonpython-2.7gnomeubuntu-16.04nao-robot

Cannot import python naoqi library after upgrading Ubuntu 14.04 to 16.04


I have recently upgraded the system to 16.04 Gnome. The most troubling thing that I am facing is that I cannot import a NAOqi library for my work. The python version of this library was pretty simple to set-up. One just has to untar the file and then enter a path variable called PYTHONPATH pointing to this library and it worked like a charm in 14.04. Now since upgrade I am facing:

Python 2.7.12 (default, Jul  1 2016, 15:12:24) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
 import naoqi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/dell/nao_sdk/pynaoqi/naoqi.py", line 7, in <module>
    import qi
  File "/home/dell/nao_sdk/pynaoqi/qi/__init__.py", line 72, in <module>
    from _qi import Application as _Application
ImportError: libqipython.so: cannot open shared object file: No such file or directory

If I add a path variable:

export LD_LIBRARY_PATH=:/home/dell/nao_sdk/pynaoqi/ The error changes to:

Python 2.7.12 (default, Jul  1 2016, 15:12:24) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import naoqi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/dell/nao_sdk/pynaoqi/naoqi.py", line 7, in <module>
    import qi
  File "/home/dell/nao_sdk/pynaoqi/qi/__init__.py", line 72, in <module>
    from _qi import Application as _Application
ImportError: libboost_regex.so.1.55.0: cannot open shared object file: No such file or directory

Please help me what should I do to get it working? I have also used python 2.6.9 but same error occurs with error below.

ImportError: libboost_python.so.1.55.0: cannot open shared object file: No such file or directory


Solution

  • Installing libboost1.55 did the trick. 16.04 comes with libboost1.58 but naoqi is not yet compatible with it. Manual installation of libboost1.55 solved the import error.