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

OSError: /home/mona/mesh-fusion/librender/pyrender.so: cannot open shared object file: No such file or directory #10

Closed
monacv opened this issue Feb 3, 2021 · 5 comments

Comments

@monacv
Copy link

monacv commented Feb 3, 2021

I caught a typo, python is missing from step two of Usage:

Screenshot from 2021-02-02 19-05-28

Also, how should I fix this error?

(tsdf) mona@goku:~/mesh-fusion$ python 2_fusion.py --mode=render --in_dir=examples/1_scaled/ --depth_dir=examples/2_depth/ --out_dir=examples/2_watertight/
Traceback (most recent call last):
  File "2_fusion.py", line 10, in <module>
    import librender
  File "/home/mona/mesh-fusion/librender/__init__.py", line 5, in <module>
    ctypes.cdll.LoadLibrary(os.path.join(pyrender_dir, 'pyrender.so'))
  File "/usr/lib/python3.8/ctypes/__init__.py", line 451, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python3.8/ctypes/__init__.py", line 373, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /home/mona/mesh-fusion/librender/pyrender.so: cannot open shared object file: No such file or directory

This solution didn't apply to me #4

(tsdf) mona@goku:~/mesh-fusion$ python
Python 3.8.5 (default, Jul 28 2020, 12:59:40) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cython
>>> cython.__version__
'0.29.21'
$ lsb_release -a
LSB Version:	core-11.1.0ubuntu2-noarch:security-11.1.0ubuntu2-noarch
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.2 LTS
Release:	20.04
Codename:	focal
@christinazavou
Copy link

Ok found the solution:
in librender directory the command python setup.py ... created a file pyrender.cpython-36m-x86_64-linux-gnu.so.
I copied this file into root directory mesh-fusion and renamed it into pyrender.so
In librender.__init__.py i changed line 5 into
ctypes.cdll.LoadLibrary(os.path.join(pyrender_dir, '../pyrender.so'))
Similarly, in libfusioncpu the file cyfusion.cpython-36m-x86_64-linux-gnu.so was generated. I copied it into root directory mesh-fusion and renamed it into cyfusion.so
Then code works.

@Hippogriff
Copy link

Ok found the solution:
in librender directory the command python setup.py ... created a file pyrender.cpython-36m-x86_64-linux-gnu.so.
I copied this file into root directory mesh-fusion and renamed it into pyrender.so
In librender.__init__.py i changed line 5 into
ctypes.cdll.LoadLibrary(os.path.join(pyrender_dir, '../pyrender.so'))
Similarly, in libfusioncpu the file cyfusion.cpython-36m-x86_64-linux-gnu.so was generated. I copied it into root directory mesh-fusion and renamed it into cyfusion.so
Then code works.

This works for me. Thanx.

@davidstutz
Copy link
Owner

Sorry for not being responsive and thanks @christinazavou for fixing the issue. Will include it in the README.

@Uuiiii
Copy link

Uuiiii commented Mar 2, 2022

Ok found the solution: in librender directory the command python setup.py ... created a file pyrender.cpython-36m-x86_64-linux-gnu.so. I copied this file into root directory mesh-fusion and renamed it into pyrender.so In librender.__init__.py i changed line 5 into ctypes.cdll.LoadLibrary(os.path.join(pyrender_dir, '../pyrender.so')) Similarly, in libfusioncpu the file cyfusion.cpython-36m-x86_64-linux-gnu.so was generated. I copied it into root directory mesh-fusion and renamed it into cyfusion.so Then code works.

python setup.py ...created a filepyrender.cpython-36m-x86_64-linux-gnu.so`. How does this work?please

@dqj5182
Copy link

dqj5182 commented May 25, 2024

Surprised that there are so many errors in a single repository

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

6 participants