celerite icon indicating copy to clipboard operation
celerite copied to clipboard

Import error on Python 3.9

Open MNGuenther opened this issue 2 years ago • 10 comments

Hi Dan,

I understand celerite is superseded by celerite2, but it would still be nice to keep the functionality alive for allesfitter users on Python 3.9.

To replicate the error: I set up a brand new conda environment with Python 3.9 and full anaconda. Then I pip-installed celerite and tried to import it as shown below:

(env_python39) Maximilians-iMac-Pro:~ mx$ pip install celerite
Collecting celerite
  Using cached celerite-0.4.0-cp39-cp39-macosx_10_9_x86_64.whl
Requirement already satisfied: pybind11 in ./opt/anaconda3/envs/env_python39/lib/python3.9/site-packages (from celerite) (2.7.1)
Requirement already satisfied: numpy in ./opt/anaconda3/envs/env_python39/lib/python3.9/site-packages (from celerite) (1.20.1)
Installing collected packages: celerite
Successfully installed celerite-0.4.0
(env_python39) Maximilians-iMac-Pro:~ mx$ python
Python 3.9.4 (default, Apr  9 2021, 09:32:38) 
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import celerite
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/celerite/__init__.py", line 34, in <module>
    from . import terms, solver, modeling
  File "/Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/celerite/terms.py", line 18, in <module>
    from .solver import get_kernel_value, get_psd_value, check_coefficients
ImportError: dlopen(/Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so, 2): Symbol not found: __ZTIN10__cxxabiv115__forced_unwindE
  Referenced from: /Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so
  Expected in: flat namespace
 in /Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so

MNGuenther avatar Oct 05 '21 15:10 MNGuenther

celerite is tested and regularly used on Python 3.9 so I'm not sure that this is a generic issue. Can you say more about your system, setup, and exactly what commands you ran?

dfm avatar Oct 05 '21 15:10 dfm

System:

macOS Catalina Version 10.15.7 iMac Pro (2017) Processor 3 GHz 10-Core Intel Xeon W

Terminal commands from scratch, leading to error:

(base) Maximilians-iMac-Pro:~ mx$ conda create -n env_test python=3.9 anaconda
Collecting package metadata (current_repodata.json): done
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /Users/mx/opt/anaconda3/envs/env_test

  added / updated specs:
    - anaconda
    - python=3.9


The following NEW packages will be INSTALLED:

  alabaster          pkgs/main/noarch::alabaster-0.7.12-pyhd3eb1b0_0
  anaconda           pkgs/main/osx-64::anaconda-2021.05-py39_0
  anaconda-client    pkgs/main/osx-64::anaconda-client-1.7.2-py39hecd8cb5_0
  anaconda-project   pkgs/main/noarch::anaconda-project-0.9.1-pyhd3eb1b0_1
  anyio              pkgs/main/osx-64::anyio-2.2.0-py39hecd8cb5_1
  appdirs            pkgs/main/noarch::appdirs-1.4.4-py_0
  applaunchservices  pkgs/main/noarch::applaunchservices-0.2.1-py_0
  appnope            pkgs/main/osx-64::appnope-0.1.2-py39hecd8cb5_1001
  appscript          pkgs/main/osx-64::appscript-1.1.2-py39h9ed2024_0
  argh               pkgs/main/osx-64::argh-0.26.2-py39hecd8cb5_0
  argon2-cffi        pkgs/main/osx-64::argon2-cffi-20.1.0-py39h9ed2024_1
  asn1crypto         pkgs/main/noarch::asn1crypto-1.4.0-py_0
  astroid            pkgs/main/osx-64::astroid-2.5-py39hecd8cb5_1
  astropy            pkgs/main/osx-64::astropy-4.2.1-py39h9ed2024_1
  async_generator    pkgs/main/noarch::async_generator-1.10-pyhd3eb1b0_0
  atomicwrites       pkgs/main/noarch::atomicwrites-1.4.0-py_0
  attrs              pkgs/main/noarch::attrs-20.3.0-pyhd3eb1b0_0
  autopep8           pkgs/main/noarch::autopep8-1.5.6-pyhd3eb1b0_0
  babel              pkgs/main/noarch::babel-2.9.0-pyhd3eb1b0_0
  backcall           pkgs/main/noarch::backcall-0.2.0-pyhd3eb1b0_0
  backports          pkgs/main/noarch::backports-1.0-pyhd3eb1b0_2
  backports.shutil_~ pkgs/main/noarch::backports.shutil_get_terminal_size-1.0.0-pyhd3eb1b0_3
  beautifulsoup4     pkgs/main/noarch::beautifulsoup4-4.9.3-pyha847dfd_0
  bitarray           pkgs/main/osx-64::bitarray-1.9.2-py39h9ed2024_1
  bkcharts           pkgs/main/osx-64::bkcharts-0.2-py39hecd8cb5_0
  black              pkgs/main/noarch::black-19.10b0-py_0
  blas               pkgs/main/osx-64::blas-1.0-mkl
  bleach             pkgs/main/noarch::bleach-3.3.0-pyhd3eb1b0_0
  blosc              pkgs/main/osx-64::blosc-1.21.0-h2842e9f_0
  bokeh              pkgs/main/osx-64::bokeh-2.3.2-py39hecd8cb5_0
  boto               pkgs/main/osx-64::boto-2.49.0-py39hecd8cb5_0
  bottleneck         pkgs/main/osx-64::bottleneck-1.3.2-py39he3068b8_1
  brotli             pkgs/main/osx-64::brotli-1.0.9-hb1e8313_2
  brotlipy           pkgs/main/osx-64::brotlipy-0.7.0-py39h9ed2024_1003
  brunsli            pkgs/main/osx-64::brunsli-0.1-h23ab428_0
  bzip2              pkgs/main/osx-64::bzip2-1.0.8-h1de35cc_0
  c-ares             pkgs/main/osx-64::c-ares-1.17.1-h9ed2024_0
  ca-certificates    pkgs/main/osx-64::ca-certificates-2021.4.13-hecd8cb5_1
  certifi            pkgs/main/osx-64::certifi-2020.12.5-py39hecd8cb5_0
  cffi               pkgs/main/osx-64::cffi-1.14.5-py39h2125817_0
  chardet            pkgs/main/osx-64::chardet-4.0.0-py39hecd8cb5_1003
  charls             pkgs/main/osx-64::charls-2.2.0-h23ab428_0
  click              pkgs/main/noarch::click-7.1.2-pyhd3eb1b0_0
  cloudpickle        pkgs/main/noarch::cloudpickle-1.6.0-py_0
  clyent             pkgs/main/osx-64::clyent-1.2.2-py39hecd8cb5_1
  colorama           pkgs/main/noarch::colorama-0.4.4-pyhd3eb1b0_0
  contextlib2        pkgs/main/noarch::contextlib2-0.6.0.post1-py_0
  cryptography       pkgs/main/osx-64::cryptography-3.4.7-py39h2fd3fbb_0
  curl               pkgs/main/osx-64::curl-7.71.1-hb0a8c7a_1
  cycler             pkgs/main/osx-64::cycler-0.10.0-py39hecd8cb5_0
  cython             pkgs/main/osx-64::cython-0.29.23-py39h23ab428_0
  cytoolz            pkgs/main/osx-64::cytoolz-0.11.0-py39h9ed2024_0
  dask               pkgs/main/noarch::dask-2021.4.0-pyhd3eb1b0_0
  dask-core          pkgs/main/noarch::dask-core-2021.4.0-pyhd3eb1b0_0
  decorator          pkgs/main/noarch::decorator-5.0.6-pyhd3eb1b0_0
  defusedxml         pkgs/main/noarch::defusedxml-0.7.1-pyhd3eb1b0_0
  diff-match-patch   pkgs/main/noarch::diff-match-patch-20200713-py_0
  distributed        pkgs/main/osx-64::distributed-2021.4.0-py39hecd8cb5_0
  docutils           pkgs/main/osx-64::docutils-0.17-py39hecd8cb5_1
  entrypoints        pkgs/main/osx-64::entrypoints-0.3-py39hecd8cb5_0
  et_xmlfile         pkgs/main/noarch::et_xmlfile-1.0.1-py_1001
  fastcache          pkgs/main/osx-64::fastcache-1.1.0-py39h9ed2024_0
  filelock           pkgs/main/noarch::filelock-3.0.12-pyhd3eb1b0_1
  flake8             pkgs/main/noarch::flake8-3.9.0-pyhd3eb1b0_0
  flask              pkgs/main/noarch::flask-1.1.2-pyhd3eb1b0_0
  freetype           pkgs/main/osx-64::freetype-2.10.4-ha233b18_0
  fsspec             pkgs/main/noarch::fsspec-0.9.0-pyhd3eb1b0_0
  future             pkgs/main/osx-64::future-0.18.2-py39hecd8cb5_1
  get_terminal_size  pkgs/main/osx-64::get_terminal_size-1.0.0-h7520d66_0
  gevent             pkgs/main/osx-64::gevent-21.1.2-py39h9ed2024_1
  giflib             pkgs/main/osx-64::giflib-5.1.4-h1de35cc_1
  glob2              pkgs/main/noarch::glob2-0.7-pyhd3eb1b0_0
  gmp                pkgs/main/osx-64::gmp-6.2.1-h23ab428_2
  gmpy2              pkgs/main/osx-64::gmpy2-2.0.8-py39h4b98818_3
  greenlet           pkgs/main/osx-64::greenlet-1.0.0-py39h23ab428_2
  h5py               pkgs/main/osx-64::h5py-2.10.0-py39h90fc2a2_0
  hdf5               pkgs/main/osx-64::hdf5-1.10.6-hdbbcd12_0
  heapdict           pkgs/main/noarch::heapdict-1.0.1-py_0
  html5lib           pkgs/main/noarch::html5lib-1.1-py_0
  icu                pkgs/main/osx-64::icu-58.2-h0a44026_3
  idna               pkgs/main/noarch::idna-2.10-pyhd3eb1b0_0
  imagecodecs        pkgs/main/osx-64::imagecodecs-2021.3.31-py39h2ea9c00_0
  imageio            pkgs/main/noarch::imageio-2.9.0-pyhd3eb1b0_0
  imagesize          pkgs/main/noarch::imagesize-1.2.0-pyhd3eb1b0_0
  importlib-metadata pkgs/main/osx-64::importlib-metadata-3.10.0-py39hecd8cb5_0
  importlib_metadata pkgs/main/noarch::importlib_metadata-3.10.0-hd3eb1b0_0
  iniconfig          pkgs/main/noarch::iniconfig-1.1.1-pyhd3eb1b0_0
  intel-openmp       pkgs/main/osx-64::intel-openmp-2021.2.0-hecd8cb5_564
  intervaltree       pkgs/main/noarch::intervaltree-3.1.0-py_0
  ipykernel          pkgs/main/osx-64::ipykernel-5.3.4-py39h01d92e1_0
  ipython            pkgs/main/osx-64::ipython-7.22.0-py39h01d92e1_0
  ipython_genutils   pkgs/main/noarch::ipython_genutils-0.2.0-pyhd3eb1b0_1
  ipywidgets         pkgs/main/noarch::ipywidgets-7.6.3-pyhd3eb1b0_1
  isort              pkgs/main/noarch::isort-5.8.0-pyhd3eb1b0_0
  itsdangerous       pkgs/main/noarch::itsdangerous-1.1.0-pyhd3eb1b0_0
  jbig               pkgs/main/osx-64::jbig-2.1-h4d881f8_0
  jdcal              pkgs/main/noarch::jdcal-1.4.1-py_0
  jedi               pkgs/main/osx-64::jedi-0.17.2-py39hecd8cb5_1
  jinja2             pkgs/main/noarch::jinja2-2.11.3-pyhd3eb1b0_0
  joblib             pkgs/main/noarch::joblib-1.0.1-pyhd3eb1b0_0
  jpeg               pkgs/main/osx-64::jpeg-9b-he5867d9_2
  json5              pkgs/main/noarch::json5-0.9.5-py_0
  jsonschema         pkgs/main/noarch::jsonschema-3.2.0-py_2
  jupyter            pkgs/main/osx-64::jupyter-1.0.0-py39hecd8cb5_7
  jupyter-packaging  pkgs/main/noarch::jupyter-packaging-0.7.12-pyhd3eb1b0_0
  jupyter_client     pkgs/main/noarch::jupyter_client-6.1.12-pyhd3eb1b0_0
  jupyter_console    pkgs/main/noarch::jupyter_console-6.4.0-pyhd3eb1b0_0
  jupyter_core       pkgs/main/osx-64::jupyter_core-4.7.1-py39hecd8cb5_0
  jupyter_server     pkgs/main/osx-64::jupyter_server-1.4.1-py39hecd8cb5_0
  jupyterlab         pkgs/main/noarch::jupyterlab-3.0.14-pyhd3eb1b0_1
  jupyterlab_pygmen~ pkgs/main/noarch::jupyterlab_pygments-0.1.2-py_0
  jupyterlab_server  pkgs/main/noarch::jupyterlab_server-2.4.0-pyhd3eb1b0_0
  jupyterlab_widgets pkgs/main/noarch::jupyterlab_widgets-1.0.0-pyhd3eb1b0_1
  jxrlib             pkgs/main/osx-64::jxrlib-1.1-haf1e3a3_2
  keyring            pkgs/main/osx-64::keyring-22.3.0-py39hecd8cb5_0
  kiwisolver         pkgs/main/osx-64::kiwisolver-1.3.1-py39h23ab428_0
  krb5               pkgs/main/osx-64::krb5-1.18.2-h75d18d8_0
  lazy-object-proxy  pkgs/main/osx-64::lazy-object-proxy-1.6.0-py39h9ed2024_0
  lcms2              pkgs/main/osx-64::lcms2-2.12-hf1fd2bf_0
  lerc               pkgs/main/osx-64::lerc-2.2.1-h23ab428_0
  libaec             pkgs/main/osx-64::libaec-1.0.4-hb1e8313_1
  libarchive         pkgs/main/osx-64::libarchive-3.4.2-haa3ed63_0
  libcurl            pkgs/main/osx-64::libcurl-7.71.1-h8a08a2b_1
  libcxx             pkgs/main/osx-64::libcxx-10.0.0-1
  libdeflate         pkgs/main/osx-64::libdeflate-1.7-h9ed2024_5
  libedit            pkgs/main/osx-64::libedit-3.1.20210216-h9ed2024_1
  libev              pkgs/main/osx-64::libev-4.33-haf1e3a3_0
  libffi             pkgs/main/osx-64::libffi-3.3-hb1e8313_2
  libgfortran        pkgs/main/osx-64::libgfortran-3.0.1-h93005f0_2
  libiconv           pkgs/main/osx-64::libiconv-1.16-h1de35cc_0
  liblief            pkgs/main/osx-64::liblief-0.10.1-h23ab428_1
  libllvm10          pkgs/main/osx-64::libllvm10-10.0.1-h76017ad_5
  libpng             pkgs/main/osx-64::libpng-1.6.37-ha441bb4_0
  libsodium          pkgs/main/osx-64::libsodium-1.0.18-h1de35cc_0
  libspatialindex    pkgs/main/osx-64::libspatialindex-1.9.3-h23ab428_0
  libssh2            pkgs/main/osx-64::libssh2-1.9.0-ha12b0ac_1
  libtiff            pkgs/main/osx-64::libtiff-4.1.0-hcb84e12_1
  libuv              pkgs/main/osx-64::libuv-1.40.0-haf1e3a3_0
  libwebp            pkgs/main/osx-64::libwebp-1.0.1-hd73b212_0
  libxml2            pkgs/main/osx-64::libxml2-2.9.10-h7cdb67c_3
  libxslt            pkgs/main/osx-64::libxslt-1.1.34-h83b36ba_0
  libzopfli          pkgs/main/osx-64::libzopfli-1.0.3-hb1e8313_0
  llvm-openmp        pkgs/main/osx-64::llvm-openmp-10.0.0-h28b9765_0
  llvmlite           pkgs/main/osx-64::llvmlite-0.36.0-py39he4411ff_4
  locket             pkgs/main/osx-64::locket-0.2.1-py39hecd8cb5_1
  lxml               pkgs/main/osx-64::lxml-4.6.3-py39h26b266a_0
  lz4-c              pkgs/main/osx-64::lz4-c-1.9.3-h23ab428_0
  lzo                pkgs/main/osx-64::lzo-2.10-haf1e3a3_2
  markupsafe         pkgs/main/osx-64::markupsafe-1.1.1-py39h9ed2024_0
  matplotlib         pkgs/main/osx-64::matplotlib-3.3.4-py39hecd8cb5_0
  matplotlib-base    pkgs/main/osx-64::matplotlib-base-3.3.4-py39h8b3ea08_0
  mccabe             pkgs/main/osx-64::mccabe-0.6.1-py39hecd8cb5_1
  mistune            pkgs/main/osx-64::mistune-0.8.4-py39h9ed2024_1000
  mkl                pkgs/main/osx-64::mkl-2021.2.0-hecd8cb5_269
  mkl-service        pkgs/main/osx-64::mkl-service-2.3.0-py39h9ed2024_1
  mkl_fft            pkgs/main/osx-64::mkl_fft-1.3.0-py39h4a7008c_2
  mkl_random         pkgs/main/osx-64::mkl_random-1.2.1-py39hb2f4e1b_2
  mock               pkgs/main/noarch::mock-4.0.3-pyhd3eb1b0_0
  more-itertools     pkgs/main/noarch::more-itertools-8.7.0-pyhd3eb1b0_0
  mpc                pkgs/main/osx-64::mpc-1.1.0-h6ef4df4_1
  mpfr               pkgs/main/osx-64::mpfr-4.0.2-h9066e36_1
  mpmath             pkgs/main/osx-64::mpmath-1.2.1-py39hecd8cb5_0
  msgpack-python     pkgs/main/osx-64::msgpack-python-1.0.2-py39hf7b0b51_1
  multipledispatch   pkgs/main/osx-64::multipledispatch-0.6.0-py39hecd8cb5_0
  mypy_extensions    pkgs/main/osx-64::mypy_extensions-0.4.1-py39hecd8cb5_0
  nbclassic          pkgs/main/noarch::nbclassic-0.2.6-pyhd3eb1b0_0
  nbclient           pkgs/main/noarch::nbclient-0.5.3-pyhd3eb1b0_0
  nbconvert          pkgs/main/osx-64::nbconvert-6.0.7-py39hecd8cb5_0
  nbformat           pkgs/main/noarch::nbformat-5.1.3-pyhd3eb1b0_0
  ncurses            pkgs/main/osx-64::ncurses-6.2-h0a44026_1
  nest-asyncio       pkgs/main/noarch::nest-asyncio-1.5.1-pyhd3eb1b0_0
  networkx           pkgs/main/noarch::networkx-2.5-py_0
  nltk               pkgs/main/noarch::nltk-3.6.1-pyhd3eb1b0_0
  nose               pkgs/main/noarch::nose-1.3.7-pyhd3eb1b0_1006
  notebook           pkgs/main/osx-64::notebook-6.3.0-py39hecd8cb5_0
  numba              pkgs/main/osx-64::numba-0.53.1-py39hb2f4e1b_0
  numexpr            pkgs/main/osx-64::numexpr-2.7.3-py39h5873af2_1
  numpy              pkgs/main/osx-64::numpy-1.20.1-py39hd6e1bb9_0
  numpy-base         pkgs/main/osx-64::numpy-base-1.20.1-py39h585ceec_0
  numpydoc           pkgs/main/noarch::numpydoc-1.1.0-pyhd3eb1b0_1
  olefile            pkgs/main/noarch::olefile-0.46-py_0
  openjpeg           pkgs/main/osx-64::openjpeg-2.3.0-hb95cd4c_1
  openpyxl           pkgs/main/noarch::openpyxl-3.0.7-pyhd3eb1b0_0
  openssl            pkgs/main/osx-64::openssl-1.1.1k-h9ed2024_0
  packaging          pkgs/main/noarch::packaging-20.9-pyhd3eb1b0_0
  pandas             pkgs/main/osx-64::pandas-1.2.4-py39h23ab428_0
  pandoc             pkgs/main/osx-64::pandoc-2.12-hecd8cb5_0
  pandocfilters      pkgs/main/osx-64::pandocfilters-1.4.3-py39hecd8cb5_1
  parso              pkgs/main/noarch::parso-0.7.0-py_0
  partd              pkgs/main/noarch::partd-1.2.0-pyhd3eb1b0_0
  path               pkgs/main/osx-64::path-15.1.2-py39hecd8cb5_0
  path.py            pkgs/main/noarch::path.py-12.5.0-0
  pathlib2           pkgs/main/osx-64::pathlib2-2.3.5-py39hecd8cb5_2
  pathspec           pkgs/main/noarch::pathspec-0.7.0-py_0
  patsy              pkgs/main/osx-64::patsy-0.5.1-py39hecd8cb5_0
  pep8               pkgs/main/osx-64::pep8-1.7.1-py39hecd8cb5_0
  pexpect            pkgs/main/noarch::pexpect-4.8.0-pyhd3eb1b0_3
  pickleshare        pkgs/main/noarch::pickleshare-0.7.5-pyhd3eb1b0_1003
  pillow             pkgs/main/osx-64::pillow-8.2.0-py39h5270095_0
  pip                pkgs/main/osx-64::pip-21.0.1-py39hecd8cb5_0
  pkginfo            pkgs/main/osx-64::pkginfo-1.7.0-py39hecd8cb5_0
  pluggy             pkgs/main/osx-64::pluggy-0.13.1-py39hecd8cb5_0
  ply                pkgs/main/osx-64::ply-3.11-py39hecd8cb5_0
  prometheus_client  pkgs/main/noarch::prometheus_client-0.10.1-pyhd3eb1b0_0
  prompt-toolkit     pkgs/main/noarch::prompt-toolkit-3.0.17-pyh06a4308_0
  prompt_toolkit     pkgs/main/noarch::prompt_toolkit-3.0.17-hd3eb1b0_0
  psutil             pkgs/main/osx-64::psutil-5.8.0-py39h9ed2024_1
  ptyprocess         pkgs/main/noarch::ptyprocess-0.7.0-pyhd3eb1b0_2
  py                 pkgs/main/noarch::py-1.10.0-pyhd3eb1b0_0
  py-lief            pkgs/main/osx-64::py-lief-0.10.1-py39h23ab428_1
  pycodestyle        pkgs/main/noarch::pycodestyle-2.6.0-pyhd3eb1b0_0
  pycosat            pkgs/main/osx-64::pycosat-0.6.3-py39h9ed2024_0
  pycparser          pkgs/main/noarch::pycparser-2.20-py_2
  pycurl             pkgs/main/osx-64::pycurl-7.43.0.6-py39hbcfaee0_0
  pydocstyle         pkgs/main/noarch::pydocstyle-6.0.0-pyhd3eb1b0_0
  pyerfa             pkgs/main/osx-64::pyerfa-1.7.3-py39h9ed2024_0
  pyflakes           pkgs/main/noarch::pyflakes-2.2.0-pyhd3eb1b0_0
  pygments           pkgs/main/noarch::pygments-2.8.1-pyhd3eb1b0_0
  pylint             pkgs/main/osx-64::pylint-2.7.4-py39hecd8cb5_1
  pyls-black         pkgs/main/noarch::pyls-black-0.4.6-hd3eb1b0_0
  pyls-spyder        pkgs/main/noarch::pyls-spyder-0.3.2-pyhd3eb1b0_0
  pyodbc             pkgs/main/osx-64::pyodbc-4.0.30-py39h23ab428_0
  pyopenssl          pkgs/main/noarch::pyopenssl-20.0.1-pyhd3eb1b0_1
  pyparsing          pkgs/main/noarch::pyparsing-2.4.7-pyhd3eb1b0_0
  pyqt               pkgs/main/osx-64::pyqt-5.9.2-py39h23ab428_6
  pyrsistent         pkgs/main/osx-64::pyrsistent-0.17.3-py39h9ed2024_0
  pysocks            pkgs/main/osx-64::pysocks-1.7.1-py39hecd8cb5_0
  pytables           pkgs/main/osx-64::pytables-3.6.1-py39h648f197_1
  pytest             pkgs/main/osx-64::pytest-6.2.3-py39hecd8cb5_2
  python             pkgs/main/osx-64::python-3.9.4-h88f2d9e_0
  python-dateutil    pkgs/main/noarch::python-dateutil-2.8.1-pyhd3eb1b0_0
  python-jsonrpc-se~ pkgs/main/noarch::python-jsonrpc-server-0.4.0-py_0
  python-language-s~ pkgs/main/noarch::python-language-server-0.36.2-pyhd3eb1b0_0
  python-libarchive~ pkgs/main/noarch::python-libarchive-c-2.9-pyhd3eb1b0_1
  python.app         pkgs/main/osx-64::python.app-3-py39h9ed2024_0
  pytz               pkgs/main/noarch::pytz-2021.1-pyhd3eb1b0_0
  pywavelets         pkgs/main/osx-64::pywavelets-1.1.1-py39he3068b8_4
  pyyaml             pkgs/main/osx-64::pyyaml-5.4.1-py39h9ed2024_1
  pyzmq              pkgs/main/osx-64::pyzmq-20.0.0-py39h23ab428_1
  qdarkstyle         pkgs/main/noarch::qdarkstyle-2.8.1-py_0
  qt                 pkgs/main/osx-64::qt-5.9.7-h468cd18_1
  qtawesome          pkgs/main/noarch::qtawesome-1.0.2-pyhd3eb1b0_0
  qtconsole          pkgs/main/noarch::qtconsole-5.0.3-pyhd3eb1b0_0
  qtpy               pkgs/main/noarch::qtpy-1.9.0-py_0
  readline           pkgs/main/osx-64::readline-8.1-h9ed2024_0
  regex              pkgs/main/osx-64::regex-2021.4.4-py39h9ed2024_0
  requests           pkgs/main/noarch::requests-2.25.1-pyhd3eb1b0_0
  ripgrep            pkgs/main/osx-64::ripgrep-12.1.1-0
  rope               pkgs/main/noarch::rope-0.18.0-py_0
  rtree              pkgs/main/osx-64::rtree-0.9.7-py39hecd8cb5_1
  ruamel_yaml        pkgs/main/osx-64::ruamel_yaml-0.15.100-py39h9ed2024_0
  scikit-image       pkgs/main/osx-64::scikit-image-0.18.1-py39hb2f4e1b_0
  scikit-learn       pkgs/main/osx-64::scikit-learn-0.24.1-py39hb2f4e1b_0
  scipy              pkgs/main/osx-64::scipy-1.6.2-py39hd5f7400_1
  seaborn            pkgs/main/noarch::seaborn-0.11.1-pyhd3eb1b0_0
  send2trash         pkgs/main/noarch::send2trash-1.5.0-pyhd3eb1b0_1
  setuptools         pkgs/main/osx-64::setuptools-52.0.0-py39hecd8cb5_0
  simplegeneric      pkgs/main/osx-64::simplegeneric-0.8.1-py39hecd8cb5_2
  singledispatch     pkgs/main/noarch::singledispatch-3.6.1-pyhd3eb1b0_1001
  sip                pkgs/main/osx-64::sip-4.19.13-py39h23ab428_0
  six                pkgs/main/osx-64::six-1.15.0-py39hecd8cb5_0
  snappy             pkgs/main/osx-64::snappy-1.1.8-hb1e8313_0
  sniffio            pkgs/main/osx-64::sniffio-1.2.0-py39hecd8cb5_1
  snowballstemmer    pkgs/main/noarch::snowballstemmer-2.1.0-pyhd3eb1b0_0
  sortedcollections  pkgs/main/noarch::sortedcollections-2.1.0-pyhd3eb1b0_0
  sortedcontainers   pkgs/main/noarch::sortedcontainers-2.3.0-pyhd3eb1b0_0
  soupsieve          pkgs/main/noarch::soupsieve-2.2.1-pyhd3eb1b0_0
  sphinx             pkgs/main/noarch::sphinx-4.0.1-pyhd3eb1b0_0
  sphinxcontrib      pkgs/main/osx-64::sphinxcontrib-1.0-py39hecd8cb5_1
  sphinxcontrib-app~ pkgs/main/noarch::sphinxcontrib-applehelp-1.0.2-pyhd3eb1b0_0
  sphinxcontrib-dev~ pkgs/main/noarch::sphinxcontrib-devhelp-1.0.2-pyhd3eb1b0_0
  sphinxcontrib-htm~ pkgs/main/noarch::sphinxcontrib-htmlhelp-1.0.3-pyhd3eb1b0_0
  sphinxcontrib-jsm~ pkgs/main/noarch::sphinxcontrib-jsmath-1.0.1-pyhd3eb1b0_0
  sphinxcontrib-qth~ pkgs/main/noarch::sphinxcontrib-qthelp-1.0.3-pyhd3eb1b0_0
  sphinxcontrib-ser~ pkgs/main/noarch::sphinxcontrib-serializinghtml-1.1.4-pyhd3eb1b0_0
  sphinxcontrib-web~ pkgs/main/noarch::sphinxcontrib-websupport-1.2.4-py_0
  spyder             pkgs/main/osx-64::spyder-4.2.5-py39hecd8cb5_0
  spyder-kernels     pkgs/main/osx-64::spyder-kernels-1.10.2-py39hecd8cb5_0
  sqlalchemy         pkgs/main/osx-64::sqlalchemy-1.4.7-py39h9ed2024_0
  sqlite             pkgs/main/osx-64::sqlite-3.35.4-hce871da_0
  statsmodels        pkgs/main/osx-64::statsmodels-0.12.2-py39h9ed2024_0
  sympy              pkgs/main/osx-64::sympy-1.8-py39hecd8cb5_0
  tbb                pkgs/main/osx-64::tbb-2020.3-h879752b_0
  tblib              pkgs/main/noarch::tblib-1.7.0-py_0
  terminado          pkgs/main/osx-64::terminado-0.9.4-py39hecd8cb5_0
  testpath           pkgs/main/noarch::testpath-0.4.4-pyhd3eb1b0_0
  textdistance       pkgs/main/noarch::textdistance-4.2.1-pyhd3eb1b0_0
  threadpoolctl      pkgs/main/noarch::threadpoolctl-2.1.0-pyh5ca1d4c_0
  three-merge        pkgs/main/noarch::three-merge-0.1.1-pyhd3eb1b0_0
  tifffile           pkgs/main/noarch::tifffile-2021.4.8-pyhd3eb1b0_2
  tk                 pkgs/main/osx-64::tk-8.6.10-hb0a8c7a_0
  toml               pkgs/main/noarch::toml-0.10.2-pyhd3eb1b0_0
  toolz              pkgs/main/noarch::toolz-0.11.1-pyhd3eb1b0_0
  tornado            pkgs/main/osx-64::tornado-6.1-py39h9ed2024_0
  tqdm               pkgs/main/noarch::tqdm-4.59.0-pyhd3eb1b0_1
  traitlets          pkgs/main/noarch::traitlets-5.0.5-pyhd3eb1b0_0
  typed-ast          pkgs/main/osx-64::typed-ast-1.4.2-py39h9ed2024_1
  typing_extensions  pkgs/main/noarch::typing_extensions-3.7.4.3-pyha847dfd_0
  tzdata             pkgs/main/noarch::tzdata-2020f-h52ac0ba_0
  ujson              pkgs/main/osx-64::ujson-4.0.2-py39h23ab428_0
  unicodecsv         pkgs/main/osx-64::unicodecsv-0.14.1-py39hecd8cb5_0
  unixodbc           pkgs/main/osx-64::unixodbc-2.3.9-haf1e3a3_0
  urllib3            pkgs/main/noarch::urllib3-1.26.4-pyhd3eb1b0_0
  watchdog           pkgs/main/osx-64::watchdog-1.0.2-py39h9ed2024_1
  wcwidth            pkgs/main/noarch::wcwidth-0.2.5-py_0
  webencodings       pkgs/main/osx-64::webencodings-0.5.1-py39hecd8cb5_1
  werkzeug           pkgs/main/noarch::werkzeug-1.0.1-pyhd3eb1b0_0
  wheel              pkgs/main/noarch::wheel-0.36.2-pyhd3eb1b0_0
  widgetsnbextension pkgs/main/osx-64::widgetsnbextension-3.5.1-py39hecd8cb5_0
  wrapt              pkgs/main/osx-64::wrapt-1.12.1-py39h9ed2024_1
  wurlitzer          pkgs/main/osx-64::wurlitzer-2.1.0-py39hecd8cb5_0
  xlrd               pkgs/main/noarch::xlrd-2.0.1-pyhd3eb1b0_0
  xlsxwriter         pkgs/main/noarch::xlsxwriter-1.3.8-pyhd3eb1b0_0
  xlwings            pkgs/main/osx-64::xlwings-0.23.0-py39hecd8cb5_0
  xlwt               pkgs/main/osx-64::xlwt-1.3.0-py39hecd8cb5_0
  xz                 pkgs/main/osx-64::xz-5.2.5-h1de35cc_0
  yaml               pkgs/main/osx-64::yaml-0.2.5-haf1e3a3_0
  yapf               pkgs/main/noarch::yapf-0.31.0-pyhd3eb1b0_0
  zeromq             pkgs/main/osx-64::zeromq-4.3.4-h23ab428_0
  zfp                pkgs/main/osx-64::zfp-0.5.5-h23ab428_6
  zict               pkgs/main/noarch::zict-2.0.0-pyhd3eb1b0_0
  zipp               pkgs/main/noarch::zipp-3.4.1-pyhd3eb1b0_0
  zlib               pkgs/main/osx-64::zlib-1.2.11-h1de35cc_3
  zope               pkgs/main/osx-64::zope-1.0-py39hecd8cb5_1
  zope.event         pkgs/main/osx-64::zope.event-4.5.0-py39hecd8cb5_0
  zope.interface     pkgs/main/osx-64::zope.interface-5.3.0-py39h9ed2024_0
  zstd               pkgs/main/osx-64::zstd-1.4.5-h41d2c2f_0


Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate env_test
#
# To deactivate an active environment, use
#
#     $ conda deactivate

(base) Maximilians-iMac-Pro:~ mx$ conda activate env_test
(env_test) Maximilians-iMac-Pro:~ mx$ pip install celerite
Collecting celerite
  Using cached celerite-0.4.0-cp39-cp39-macosx_10_9_x86_64.whl
Collecting pybind11
  Downloading pybind11-2.8.0-py2.py3-none-any.whl (207 kB)
     |████████████████████████████████| 207 kB 1.1 MB/s 
Requirement already satisfied: numpy in ./opt/anaconda3/envs/env_test/lib/python3.9/site-packages (from celerite) (1.20.1)
Installing collected packages: pybind11, celerite
Successfully installed celerite-0.4.0 pybind11-2.8.0
(env_test) Maximilians-iMac-Pro:~ mx$ python
Python 3.9.4 (default, Apr  9 2021, 09:32:38) 
[Clang 10.0.0 ] :: Anaconda, Inc. on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import celerite
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/mx/opt/anaconda3/envs/env_test/lib/python3.9/site-packages/celerite/__init__.py", line 34, in <module>
    from . import terms, solver, modeling
  File "/Users/mx/opt/anaconda3/envs/env_test/lib/python3.9/site-packages/celerite/terms.py", line 18, in <module>
    from .solver import get_kernel_value, get_psd_value, check_coefficients
ImportError: dlopen(/Users/mx/opt/anaconda3/envs/env_test/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so, 2): Symbol not found: __ZTIN10__cxxabiv115__forced_unwindE
  Referenced from: /Users/mx/opt/anaconda3/envs/env_test/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so
  Expected in: flat namespace
 in /Users/mx/opt/anaconda3/envs/env_test/lib/python3.9/site-packages/celerite/solver.cpython-39-darwin.so
>>> 

MNGuenther avatar Oct 05 '21 16:10 MNGuenther

I can't reproduce this issue, but I'm currently on an ARM mac with osx v11.6 so I can't directly test on your environment. I'd recommend trying to uninstall celerite and then re-install it from conda-forge:

conda install -c conda-forge celerite

or from source

python -m pip install --no-binary celerite

dfm avatar Oct 05 '21 17:10 dfm

Thanks for your quick responses, Dan!

Unfortunately the two suggested ways also did not work. The conda-forge install got stuck in an endless "solving environment" loop, while the source install resulted in a C compiler error.

I also updated to Mac OS Big Sur 11.6, but still face the same issue.

I think the reason is that I am using a custom gcc-8 compiler instead of the Mac compiler, because other Python packages (like ellc) do not work with the default Mac compiler.

In any case, I think this issue can just be closed, seen that it is unique to me and works for other Python 3.9 users, as you said above. I will just use celerite1 on Python 3.8 and switch over to celerite2 in the future.

MNGuenther avatar Oct 06 '21 15:10 MNGuenther

I'm happy to try to help you debug this. Do you want to share the error message you get when compiling from source? There shouldn't be any gcc compatibility issues.

dfm avatar Oct 06 '21 15:10 dfm

Thanks Dan!

I didn't want to steal more of your time, but since you offer it... ;)

First, I set up a fresh environment, just as described above. Next, I clone celerite into a local folder. Finally, I go into said folder and execute python setup.py install, which leads to the error. All shown below:

(env_python39) Maximilians-iMac-Pro:Code mx$ git clone https://github.com/dfm/celerite.git
Cloning into 'celerite'...
remote: Enumerating objects: 21534, done.
remote: Counting objects: 100% (136/136), done.
remote: Compressing objects: 100% (100/100), done.
remote: Total 21534 (delta 63), reused 69 (delta 21), pack-reused 21398
Receiving objects: 100% (21534/21534), 244.24 MiB | 3.09 MiB/s, done.
Resolving deltas: 100% (8288/8288), done.
(env_python39) Maximilians-iMac-Pro:Code mx$ cd celerite/
(env_python39) Maximilians-iMac-Pro:celerite mx$ ls
AUTHORS.rst	MANIFEST.in	cpp		pyproject.toml
CITATION	README.rst	docs		readthedocs.yml
HISTORY.rst	celerite	examples	setup.py
LICENSE		cholesky.ipynb	paper		tests
(env_python39) Maximilians-iMac-Pro:celerite mx$ python setup.py install
/Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/distutils/dist.py:274: UserWarning: Unknown distribution option: 'use_scm_version'
  warnings.warn(msg)
running install
running bdist_egg
running egg_info
creating celerite.egg-info
writing celerite.egg-info/PKG-INFO
writing dependency_links to celerite.egg-info/dependency_links.txt
writing requirements to celerite.egg-info/requires.txt
writing top-level names to celerite.egg-info/top_level.txt
writing manifest file 'celerite.egg-info/SOURCES.txt'
reading manifest file 'celerite.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no directories found matching 'cpp/lib'
writing manifest file 'celerite.egg-info/SOURCES.txt'
installing library code to build/bdist.macosx-10.9-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib.macosx-10.9-x86_64-3.9
creating build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/terms.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/build.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/timer.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/__init__.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/celerite.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/plot_setup.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/modeling.py -> build/lib.macosx-10.9-x86_64-3.9/celerite
copying celerite/solver.cpp -> build/lib.macosx-10.9-x86_64-3.9/celerite
running build_ext
/usr/local/bin/gcc-8 -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /Users/mx/opt/anaconda3/envs/env_python39/include -arch x86_64 -fPIC -O2 -isystem /Users/mx/opt/anaconda3/envs/env_python39/include -arch x86_64 -I/Users/mx/opt/anaconda3/envs/env_python39/include/python3.9 -c flagcheck.cpp -o flagcheck.o -std=c++17
building 'celerite.solver' extension
creating build/temp.macosx-10.9-x86_64-3.9
creating build/temp.macosx-10.9-x86_64-3.9/celerite
/usr/local/bin/gcc-8 -Wno-unused-result -Wsign-compare -Wunreachable-code -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /Users/mx/opt/anaconda3/envs/env_python39/include -arch x86_64 -fPIC -O2 -isystem /Users/mx/opt/anaconda3/envs/env_python39/include -arch x86_64 -Icpp/include -Icpp/lib/eigen -I/Users/mx/opt/anaconda3/envs/env_python39/lib/python3.9/site-packages/pybind11/include -I/Users/mx/opt/anaconda3/envs/env_python39/include/python3.9 -c celerite/solver.cpp -o build/temp.macosx-10.9-x86_64-3.9/celerite/solver.o -std=c++17 -mmacosx-version-min=10.14 -fvisibility=hidden -g0 -stdlib=libc++
gcc-8: error: unrecognized command line option '-stdlib=libc++'

MNGuenther avatar Oct 06 '21 15:10 MNGuenther

Note: I used the above approach because

python -m pip install --no-binary celerite

resulted in the following error:

(env_python39) Maximilians-iMac-Pro:Code mx$ python -m pip install --no-binary celerite
ERROR: You must give at least one requirement to install (see "pip help install")

MNGuenther avatar Oct 06 '21 16:10 MNGuenther

(Side note: the correct --no-binary command is python -m pip install celerite --no-binary celerite, sorry!)

I pulled out my old laptop to try this out and I can reproduce your issues on it when using gcc. I got confused because the log in your first message said that you were installing using a wheel, but there is no wheel released for py3.9, so you must have already tried to install it from source with gcc as your compiler.

The actual issues are two different pybind11 incompatibilities with gcc, so if you have to install celerite from source, I'd recommend using clang. I'll push a new set of wheels later today so that a wheel installation will work.

dfm avatar Oct 07 '21 11:10 dfm

v0.4.2 is now available with a macos py39 (and py310!) wheel. python -m pip install -U celerite should do the trick now.

dfm avatar Oct 07 '21 13:10 dfm

Awesome, thanks Dan! Works like a charm, now I can pip-install, import, and run celerite on Python 3.9 while using gcc-8!

MNGuenther avatar Oct 08 '21 09:10 MNGuenther