jcmgray / cotengra

Hyper optimized contraction trees for large tensor networks and einsums
https://cotengra.readthedocs.io
Apache License 2.0
174 stars 32 forks source link

Mac Instillation: Contengra and Kahypar #17

Closed shadibeh closed 9 months ago

shadibeh commented 1 year ago

Hi!

We could not install Kahypar on Mac. We opened an issue in Kahypar repo through the link: https://github.com/kahypar/kahypar/issues/103

We are wondering if the problem might be something related to Cotengra or not. Would you please take a look at the issue and let us know if you can help us to figure it out? Thanks

jcmgray commented 1 year ago

Hi @shadibeh, there are various different issues mentioned there. Which error are you getting, and is it during installation of kahypar or while running cotengra?

shadibeh commented 1 year ago

Hi. Thanks for the reply. It happens during installation of Kahypar. The error is in the following:

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for kahypar Running setup.py clean for kahypar Failed to build kahypar Installing collected packages: kahypar Running setup.py install for kahypar ... error error: subprocess-exited-with-error

× Running setup.py install for kahypar did not run successfully. │ exit code: 1 ╰─> [94 lines of output] running install /Users/myenv_quimb/lib/python3.9/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running build running build_ext -- The CXX compiler identification is AppleClang 13.1.6.13160021 -- The C compiler identification is AppleClang 13.1.6.13160021 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found Threads: CMake Deprecation Warning at external_tools/googletest/CMakeLists.txt:1 (cmake_minimum_required): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake.

    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.

  CMake Deprecation Warning at external_tools/googletest/googlemock/CMakeLists.txt:41 (cmake_minimum_required):
    Compatibility with CMake < 2.8.12 will be removed from a future version of
    CMake.

    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.

  CMake Deprecation Warning at external_tools/googletest/googletest/CMakeLists.txt:48 (cmake_minimum_required):
    Compatibility with CMake < 2.8.12 will be removed from a future version of
    CMake.

    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.

  -- Found PythonInterp: /Users/myenv_quimb/bin/python (found version "3.9.14")
  -- Found Python: /opt/homebrew/Frameworks/Python.framework/Versions/3.10/bin/python3.10 (found version "3.10.6") found components: Interpreter
  CMake Error at /Users/myenv_quimb/lib/python3.9/site-packages/cmake/data/CMake.app/Contents/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
    Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS)
  Call Stack (most recent call first):
    /Users/myenv_quimb/lib/python3.9/site-packages/cmake/data/CMake.app/Contents/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
    /Users/myenv_quimb/lib/python3.9/site-packages/cmake/data/CMake.app/Contents/share/cmake-3.22/Modules/FindPythonLibs.cmake:310 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
    CMakeLists.txt:63 (find_package)

  -- Configuring incomplete, errors occurred!
  See also "/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/build/temp.macosx-12-arm64-3.9/CMakeFiles/CMakeOutput.log".
  See also "/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/build/temp.macosx-12-arm64-3.9/CMakeFiles/CMakeError.log".
  Traceback (most recent call last):
    File "<string>", line 2, in <module>
    File "<pip-setuptools-caller>", line 34, in <module>
    File "/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/setup.py", line 74, in <module>
      setup(
    File "/Users/myenv_quimb/lib/python3.9/site-packages/setuptools/__init__.py", line 159, in setup
      return distutils.core.setup(**attrs)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/Users/myenv_quimb/lib/python3.9/site-packages/setuptools/command/install.py", line 68, in run
      return orig.install.run(self)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/install.py", line 546, in run
      self.run_command('build')
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/setup.py", line 31, in run
      self.build_extension(ext)
    File "/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/setup.py", line 58, in build_extension
      subprocess.check_call(
    File "/opt/homebrew/Cellar/python@3.9/3.9.14/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 373, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['cmake', '/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52', '-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/build/lib.macosx-12-arm64-3.9', '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/private/var/folders/z6/4vq2qqgs2078v53wjbxszb8h0000gn/T/pip-install-xoz39yyy/kahypar_ab5068c07b094fa19ac639d4d515dc52/build/lib.macosx-12-arm64-3.9', '-DBOOST_ROOT=/software/boost_1_66_0', '-DPYTHON_EXECUTABLE=/Users/myenv_quimb/bin/python', '-DCMAKE_BUILD_TYPE=Release']' returned non-zero exit status 1.
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure

× Encountered error while trying to install package. ╰─> kahypar

note: This is an issue with the package mentioned above, not pip. hint: See above for output from the failure.

jcmgray commented 1 year ago

It's a little tough to parse all that but it looks like the key error is that some library can't find the python headers (include directory).

I don't think this is related to cotengra! My only suggestion would be to use conda (eg maybe miniconda) to install python.

jcmgray commented 9 months ago

Closing for now, as I think this is not cotengra specific.