ebachelet / pyLIMA

GNU General Public License v3.0
31 stars 8 forks source link

Pip install of pyLIMA fails to build kepler.py #62

Closed rachel3834 closed 11 months ago

rachel3834 commented 1 year ago

Attempting to build pyLIMA through a simple pip install into a Python 3.11.0rc1 virtual environment on Ubuntu 22.04.2 LTS fails with the following complaint about the kepler.py module. Note that this is a dependency of pyLIMA and not part of pyLIMA itself.

PyLIMA can still be built by cloning the Github repo and installing locally with

cd pyLIMA pip install .

Error output: (base) rstreet@rstreet-ubuntu:/data/software$ source pylima_install_test/bin/activate (pylima_install_test) (base) rstreet@rstreet-ubuntu:/data/software$ pip install pyLIMA Collecting pyLIMA Using cached pyLIMA-1.9-py3-none-any.whl Collecting numpy>=1.7 Using cached numpy-1.25.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.6 MB) Collecting kepler.py Using cached kepler.py-0.0.7.tar.gz (10 kB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Collecting VBBinaryLensing>=3.6 Using cached VBBinaryLensing-3.6.0.tar.gz (501 kB) Preparing metadata (setup.py) ... done Collecting pygtc Using cached pyGTC-0.4.1-py2.py3-none-any.whl (3.2 MB) Collecting pymoo Using cached pymoo-0.6.0.1-py3-none-any.whl Collecting scipy>=1.0 Downloading scipy-1.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 36.2/36.2 MB 20.9 MB/s eta 0:00:00 Collecting importlib-metadata Using cached importlib_metadata-6.7.0-py3-none-any.whl (22 kB) Collecting tqdm>=4.0 Using cached tqdm-4.65.0-py3-none-any.whl (77 kB) Collecting astroquery Using cached astroquery-0.4.6-py3-none-any.whl (4.5 MB) Collecting astropy Using cached astropy-5.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (10.3 MB) Collecting bokeh<3 Using cached bokeh-2.4.3-py3-none-any.whl (18.5 MB) Collecting emcee Using cached emcee-3.1.4-py2.py3-none-any.whl (46 kB) Collecting packaging>=16.8 Using cached packaging-23.1-py3-none-any.whl (48 kB) Collecting Jinja2>=2.9 Using cached Jinja2-3.1.2-py3-none-any.whl (133 kB) Collecting pillow>=7.1.0 Using cached Pillow-9.5.0-cp311-cp311-manylinux_2_28_x86_64.whl (3.4 MB) Collecting typing-extensions>=3.10.0 Using cached typing_extensions-4.7.0-py3-none-any.whl (33 kB) Collecting tornado>=5.1 Using cached tornado-6.3.2-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (426 kB) Collecting PyYAML>=3.10 Using cached PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (757 kB) Collecting pybind11>=2.3 Using cached pybind11-2.10.4-py3-none-any.whl (222 kB) Collecting pyerfa>=2.0 Using cached pyerfa-2.0.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (741 kB) Collecting beautifulsoup4>=4.3.2 Using cached beautifulsoup4-4.12.2-py3-none-any.whl (142 kB) Collecting keyring>=4.0 Using cached keyring-24.2.0-py3-none-any.whl (37 kB) Collecting html5lib>=0.999 Using cached html5lib-1.1-py2.py3-none-any.whl (112 kB) Collecting requests>=2.4.3 Using cached requests-2.31.0-py3-none-any.whl (62 kB) Collecting pyvo>=1.1 Using cached pyvo-1.4.1-py3-none-any.whl (887 kB) Collecting zipp>=0.5 Using cached zipp-3.15.0-py3-none-any.whl (6.8 kB) Collecting matplotlib Using cached matplotlib-3.7.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.6 MB) Collecting autograd>=1.4 Using cached autograd-1.6.2-py3-none-any.whl (49 kB) Collecting alive-progress Using cached alive_progress-3.1.4-py3-none-any.whl (75 kB) Collecting dill Using cached dill-0.3.6-py3-none-any.whl (110 kB) Collecting Deprecated Using cached Deprecated-1.2.14-py2.py3-none-any.whl (9.6 kB) Collecting cma==3.2.2 Using cached cma-3.2.2-py2.py3-none-any.whl (249 kB) Collecting future>=0.15.2 Using cached future-0.18.3-py3-none-any.whl Collecting soupsieve>1.2 Using cached soupsieve-2.4.1-py3-none-any.whl (36 kB) Collecting webencodings Using cached webencodings-0.5.1-py2.py3-none-any.whl (11 kB) Collecting six>=1.9 Using cached six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting MarkupSafe>=2.0 Using cached MarkupSafe-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (28 kB) Collecting jeepney>=0.4.2 Using cached jeepney-0.8.0-py3-none-any.whl (48 kB) Collecting jaraco.classes Using cached jaraco.classes-3.2.3-py3-none-any.whl (6.0 kB) Collecting SecretStorage>=3.2 Using cached SecretStorage-3.3.3-py3-none-any.whl (15 kB) Collecting fonttools>=4.22.0 Using cached fonttools-4.40.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.3 MB) Collecting pyparsing>=2.3.1 Using cached pyparsing-3.1.0-py3-none-any.whl (102 kB) Collecting kiwisolver>=1.0.1 Using cached kiwisolver-1.4.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB) Collecting contourpy>=1.0.1 Using cached contourpy-1.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (300 kB) Collecting cycler>=0.10 Using cached cycler-0.11.0-py3-none-any.whl (6.4 kB) Collecting python-dateutil>=2.7 Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Collecting certifi>=2017.4.17 Using cached certifi-2023.5.7-py3-none-any.whl (156 kB) Collecting charset-normalizer<4,>=2 Using cached charset_normalizer-3.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (197 kB) Collecting urllib3<3,>=1.21.1 Using cached urllib3-2.0.3-py3-none-any.whl (123 kB) Collecting idna<4,>=2.5 Using cached idna-3.4-py3-none-any.whl (61 kB) Collecting about-time==4.2.1 Using cached about_time-4.2.1-py3-none-any.whl (13 kB) Collecting grapheme==0.6.0 Using cached grapheme-0.6.0-py3-none-any.whl Collecting wrapt<2,>=1.10 Using cached wrapt-1.15.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (78 kB) Collecting cryptography>=2.0 Using cached cryptography-41.0.1-cp37-abi3-manylinux_2_28_x86_64.whl (4.3 MB) Collecting more-itertools Using cached more_itertools-9.1.0-py3-none-any.whl (54 kB) Collecting cffi>=1.12 Using cached cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (462 kB) Collecting pycparser Using cached pycparser-2.21-py2.py3-none-any.whl (118 kB) Using legacy 'setup.py install' for VBBinaryLensing, since package 'wheel' is not installed. Building wheels for collected packages: kepler.py Building wheel for kepler.py (pyproject.toml) ... error error: subprocess-exited-with-error

× Building wheel for kepler.py (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [97 lines of output]

  --------------------------------------------------------------------------------
  -- Trying 'Ninja' generator
  --------------------------------
  ---------------------------
  ----------------------
  -----------------
  ------------
  -------
  --
  Not searching for unused variables given on the command line.
  -- The C compiler identification is GNU 11.3.0
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: /usr/bin/cc - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- The CXX compiler identification is GNU 11.3.0
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /usr/bin/c++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Configuring done (0.5s)
  -- Generating done (0.0s)
  -- Build files have been written to: /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4/_cmake_test_compile/build
  --
  -------
  ------------
  -----------------
  ----------------------
  ---------------------------
  --------------------------------
  -- Trying 'Ninja' generator - success
  --------------------------------------------------------------------------------

  Configuring Project
    Working directory:
      /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4/_skbuild/linux-x86_64-3.11/cmake-build
    Command:
      /tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/cmake/data/bin/cmake /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4 -G Ninja -DCMAKE_MAKE_PROGRAM:FILEPATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/ninja/data/bin/ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4/_skbuild/linux-x86_64-3.11/cmake-install/src/kepler -DPYTHON_VERSION_STRING:STRING=3.11.0rc1 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.11 -DPython_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPython_ROOT_DIR:PATH=/data/software/pylima_install_test -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.11 -DPython3_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPython3_ROOT_DIR:PATH=/data/software/pylima_install_test -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.11 -DCMAKE_MAKE_PROGRAM:FILEPATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/ninja/data/bin/ninja -DCMAKE_BUILD_TYPE:STRING=Release

  Not searching for unused variables given on the command line.
  -- The C compiler identification is GNU 11.3.0
  -- The CXX compiler identification is GNU 11.3.0
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: /usr/bin/cc - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /usr/bin/c++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  '/data/software/pylima_install_test/bin/python3.11' '-c' 'import pybind11; print(pybind11.get_cmake_dir())'
  -- Found PythonInterp: /data/software/pylima_install_test/bin/python3.11 (found suitable version "3.11", minimum required is "3.6")
  -- Found PythonLibs: python3.11
  -- Performing Test HAS_FLTO
  -- Performing Test HAS_FLTO - Success
  -- Found pybind11: /tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/pybind11/include (found version "2.10.4")
  -- Configuring done (0.7s)
  CMake Error in CMakeLists.txt:
    Imported target "pybind11::module" includes non-existent path

      "/usr/include/python3.11"

    in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:

    * The path was deleted, renamed, or moved to another location.

    * An install or uninstall procedure did not complete successfully.

    * The installation package was faulty and references files it does not
    provide.

  -- Generating done (0.0s)
  CMake Generate step failed.  Build files cannot be regenerated correctly.
  Traceback (most recent call last):
    File "/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/skbuild/setuptools_wrap.py", line 666, in setup
      env = cmkr.configure(
            ^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/skbuild/cmaker.py", line 357, in configure
      raise SKBuildError(msg)

  An error occurred while configuring with CMake.
    Command:
      /tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/cmake/data/bin/cmake /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4 -G Ninja -DCMAKE_MAKE_PROGRAM:FILEPATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/ninja/data/bin/ninja --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4/_skbuild/linux-x86_64-3.11/cmake-install/src/kepler -DPYTHON_VERSION_STRING:STRING=3.11.0rc1 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.11 -DPython_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPython_ROOT_DIR:PATH=/data/software/pylima_install_test -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.11 -DPython3_EXECUTABLE:PATH=/data/software/pylima_install_test/bin/python3.11 -DPython3_ROOT_DIR:PATH=/data/software/pylima_install_test -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.11 -DCMAKE_MAKE_PROGRAM:FILEPATH=/tmp/pip-build-env-3sob88wd/overlay/lib/python3.11/site-packages/ninja/data/bin/ninja -DCMAKE_BUILD_TYPE:STRING=Release
    Source directory:
      /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4
    Working directory:
      /tmp/pip-install-9gsushpo/kepler-py_fd60945258f5401aae64aa1ae51151d4/_skbuild/linux-x86_64-3.11/cmake-build
  Please see CMake's output for more information.

  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for kepler.py Failed to build kepler.py ERROR: Could not build wheels for kepler.py, which is required to install pyproject.toml-based projects

ebachelet commented 11 months ago

I believe this is fixed?