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

undefined symbol: reb_error? #97

Open
mschwamb opened this issue Dec 13, 2023 · 6 comments
Open

undefined symbol: reb_error? #97

mschwamb opened this issue Dec 13, 2023 · 6 comments

Comments

@mschwamb
Copy link

mschwamb commented Dec 13, 2023

Our conda build of sorcha is getting errors and it looks like its associated with the assist libraries.

OSError: /home/conda/feedstock_root/build_artifacts/sorcha_1702463297198/_test_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold/lib/python3.11/site-packages/assist/../libassist.cpython-311-x86_64-linux-gnu.so: undefined symbol: reb_error

Would you be able to take a look?

@hannorein
Copy link
Collaborator

It looks like you are using a new version of rebound but and old version of assist.

@mschwamb
Copy link
Author

mschwamb commented Dec 13, 2023

We're getting assist from conda. Is the conda version of assist up to date or out of sync?

@matthewholman
Copy link
Owner

It might not be up to date. See issue #96. @mjuric, would you have time to guide me through that process?

@mjuric
Copy link
Contributor

mjuric commented Dec 13, 2023

I reproduced the problem:

$ mamba create -n sorcha-env-test -c conda-forge sorcha
$ conda activate sorcha-env-test
$ sorcha

Traceback (most recent call last):
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/bin/sorcha", line 6, in <module>
    from sorcha.sorcha import main
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/sorcha/__init__.py", line 4, in <module>
    from .sorcha import cite
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/sorcha/sorcha.py", line 9, in <module>
    from sorcha.ephemeris.simulation_driver import create_ephemeris
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/sorcha/ephemeris/__init__.py", line 27, in <module>
    from .simulation_setup import (
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/sorcha/ephemeris/simulation_setup.py", line 3, in <module>
    from assist import Ephem
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/assist/__init__.py", line 13, in <module>
    clibassist = cdll.LoadLibrary(pymodulespath + '/../libassist' + suffix)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/ctypes/__init__.py", line 454, in LoadLibrary
    return self._dlltype(name)
           ^^^^^^^^^^^^^^^^^^^
  File "/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/ctypes/__init__.py", line 376, in __init__
    self._handle = _dlopen(self._name, mode)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^
OSError: dlopen(/Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/assist/../libassist.cpython-311-darwin.so, 0x0006): Symbol not found: _reb_create_simulation
  Referenced from: <8FC1D2C4-141A-32CA-A5C7-65A2D9922BCA> /Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/libassist.cpython-311-darwin.so
  Expected in:     <596EE18A-D844-33B5-AB8A-86181DF868CC> /Users/mjuric/miniconda3/envs/sorcha-env-test/lib/python3.11/site-packages/librebound.cpython-311-darwin.so

Downgrading rebound to 3.28.3 makes it work. As @hannorein said, it's a version mismatch. This is arm64.

Looking at why this happened...

@mjuric
Copy link
Contributor

mjuric commented Dec 13, 2023

I made the necessary updates, and I'm now waiting on conda-forge bot to pick up the changes.

@matthewholman , let's find 30 min to meet & for me to walk you through the release process so conda repos get updated semi-automatically going forward (are you free later today)?

@mschwamb
Copy link
Author

Thanks all for the help solving this

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

4 participants