MouseLand / suite2p

cell detection in calcium imaging recordings
http://www.suite2p.org
GNU General Public License v3.0
334 stars 239 forks source link

Installing using pip on source results in OSError:...libScanImageTiffReaderAPI.so: cannot open shared object file: No such file or directory #1096

Open paulgarias opened 4 months ago

paulgarias commented 4 months ago

Describe the issue:

I am attempting to install on a linux (ubuntu) virtual machine (native arm64 arch):

Linux ubuntu 5.15.0-94-generic #104-Ubuntu SMP Tue Jan 9 15:26:57 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

I have cloned the repository on my computer, tried with numerous python version. Currently using python3.10.

I am getting no issues installing the suite when I run pip install -e .[all], but when I run suite2p, I get the following error:

ubuntu@ubuntu:~/Desktop/batuhan/suite2p$ suite2p
Traceback (most recent call last):
  File "/home/ubuntu/.local/bin/suite2p", line 33, in <module>
    sys.exit(load_entry_point('suite2p', 'console_scripts', 'suite2p')())
  File "/home/ubuntu/.local/bin/suite2p", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/__init__.py", line 6, in <module>
    from .run_s2p import run_s2p, run_plane, pipeline
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/run_s2p.py", line 15, in <module>
    from . import extraction, io, registration, detection, classification, default_ops
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/extraction/__init__.py", line 5, in <module>
    from .extract import create_masks_and_extract, enhanced_mean_image, extract_traces_from_masks, extraction_wrapper
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/extraction/extract.py", line 11, in <module>
    from .masks import create_masks
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/extraction/masks.py", line 9, in <module>
    from ..detection.sparsedetect import extendROI
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/detection/__init__.py", line 4, in <module>
    from .detect import detect, detection_wrapper, bin_movie
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/detection/detect.py", line 11, in <module>
    from .denoise import pca_denoise
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/detection/denoise.py", line 8, in <module>
    from ..registration.nonrigid import make_blocks, spatial_taper
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/registration/__init__.py", line 4, in <module>
    from .register import (registration_wrapper, save_registration_outputs_to_ops,
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/registration/register.py", line 12, in <module>
    from .. import io, default_ops
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/io/__init__.py", line 9, in <module>
    from .tiff import mesoscan_to_binary, ome_to_binary, tiff_to_binary, generate_tiff_filename, save_tiff
  File "/home/ubuntu/Desktop/batuhan/suite2p/suite2p/io/tiff.py", line 18, in <module>
    from ScanImageTiffReader import ScanImageTiffReader
  File "/home/ubuntu/.local/lib/python3.10/site-packages/ScanImageTiffReader/__init__.py", line 55, in <module>
    _api_lib=loadapi()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/ScanImageTiffReader/__init__.py", line 53, in loadapi
    return CDLL(external.resource_path())
  File "/usr/lib/python3.10/ctypes/__init__.py", line 374, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: /home/ubuntu/.local/lib/python3.10/site-packages/ScanImageTiffReader/external/ScanImageTiffReader-1.4.1-Linux/lib/libScanImageTiffReaderAPI.so: cannot open shared object file: No such file or directory

I have already tried to change the LD_LIBRARY_PATH to include the location in the last line (confirmed that shared object was there), but it continues to throw the same error.

Provide environment info:

I am currently running this through a virtual machine on the main python installation.