Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using pydart with dart 6.4? #17

Open
anlsh opened this issue Apr 30, 2018 · 1 comment
Open

Using pydart with dart 6.4? #17

anlsh opened this issue Apr 30, 2018 · 1 comment

Comments

@anlsh
Copy link
Contributor

anlsh commented Apr 30, 2018

I believe that my libdart6-all-dev was upgraded to the 6.4 version recently, and since then whenever I try to import pydart2 I get the following error:

Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
>>> import pydart2
Traceback (most recent call last):
  File "/home/me/Code/libs/pydart2/pydart2/pydart2_api.py", line 18, in swig_import_helper
    fp, pathname, description = imp.find_module('_pydart2_api', [dirname(__file__)])
  File "/usr/lib/python3.5/imp.py", line 296, in find_module
    raise ImportError(_ERR_MSG.format(name), name=name)
ImportError: No module named '_pydart2_api'

During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/me/Code/libs/pydart2/pydart2/__init__.py", line 5, in <module>
    from . import pydart2_api as papi
  File "/home/me/Code/libs/pydart2/pydart2/pydart2_api.py", line 28, in <module>
    _pydart2_api = swig_import_helper()
  File "/home/me/Code/libs/pydart2/pydart2/pydart2_api.py", line 20, in swig_import_helper
    import _pydart2_api
ImportError: libdart.so.6.3: cannot open shared object file: No such file or directory

I checked my library path with ls /usr/lib/libdart* to confirm that I had the libraries in the first place; I believe that I do in fact have all of the packages,

/usr/lib/libdart-collision-bullet.so
/usr/lib/libdart-collision-bullet.so.6.4
/usr/lib/libdart-collision-bullet.so.6.4.0
/usr/lib/libdart-collision-ode.so
etc...

but as you can see they're all version 6.4.0. I searched a bit in the pydart source for some sort of version flag asking for version 6.3, but I didn't find anything obvious. Is there anything I can do to get pydart to recognize the more recent versions of the libraries?

Note: I already tried building dart's release-6.3 branch from source and linking the output libraries to my path; while this does solve the library versioning issues and allows me to import pydart2 normally, there are still some problems- for instance, loading .skel files gives me errors concerning segfaults and stack smashing which I was definitely not running into before. I'm not sure what's causing these errors, therefore I was hoping to rely on the prebuilt packages.

Unfortunately, I can't figure out how to install the v6.3 packages either- the only package with that version from the ppa is 6.3.0.ppa2~zesty, but doing a

sudo apt-get install libdart6=6.3.0.ppa2~zesty 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Version '6.3.0.ppa2~zesty' for 'libdart6' was not found

Fails with the above error. In fact, the only version that the ppa seems to provide is 6.4

apt-cache madison libdart6                     
libdart6 | 6.4.0.ppa1~xenial | http:https://ppa.launchpad.net/dartsim/ppa/ubuntu xenial/main amd64 Packages
@erwincoumans
Copy link

I had a similar issue, resolved by adding this to ~/.bashrc

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib:/usr/local/lib

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants