lab-cosmo / sphericart

Multi-language library for the calculation of spherical harmonics in Cartesian coordinates
https://sphericart.readthedocs.io/en/latest/
MIT License
71 stars 12 forks source link

ERROR: Could not build wheels for sphericart, which is required to install pyproject.toml-based projects #89

Open weberscode opened 9 months ago

weberscode commented 9 months ago

Hi all,

i did the following and could not install it to my conda environment.

  1. Open python terminal of my environment with python3.9
  2. Type "git clone https://github.com/lab-cosmo/sphericart"
  3. Type "cd .\sphericart\"
  4. Type "pip install ."

Then i get the following error: Building wheel for sphericart (pyproject.toml) did not run successfully. │ exit code: 1

What am i doing wrong? I have a standard windows computer.

kr Simon

Luthaf commented 9 months ago

Sphericart does not currently support windows: https://github.com/lab-cosmo/sphericart/pull/27.

Just to be sure you are hitting the issue I think you are, could you share here the full build log with pip install --verbose .?


If you are able to use it, Windows Subsystem for Linux (WSL) gives you a full Linux environment inside windows, accessible without having to reboot, and could be a solution while we work on native windows support.

weberscode commented 9 months ago
pip install --verbose .
Using pip 23.1.2 from C:\Users\usnam\.conda\envs\py39\lib\site-packages\pip (python 3.9)
Processing C:\Users\usnam\sphericart
  Running command pip subprocess to install build dependencies
  Collecting setuptools>=44
    Using cached setuptools-69.0.3-py3-none-any.whl (819 kB)
  Collecting wheel>=0.36
    Using cached wheel-0.42.0-py3-none-any.whl (65 kB)
  Collecting cmake
    Using cached cmake-3.28.1-py2.py3-none-win_amd64.whl (35.8 MB)
  Installing collected packages: cmake, wheel, setuptools
  ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
  tensorflow 2.10.0 requires libclang>=13.0.0, which is not installed.
  tensorflow 2.10.0 requires tensorflow-io-gcs-filesystem>=0.23.1, which is not installed.
  tensorboard 2.10.0 requires protobuf<3.20,>=3.9.2, but you have protobuf 3.20.3 which is incompatible.
  tensorflow 2.10.0 requires protobuf<3.20,>=3.9.2, but you have protobuf 3.20.3 which is incompatible.
  Successfully installed cmake-3.28.1 setuptools-69.0.3 wheel-0.42.0
  Installing build dependencies ... done
  Running command Getting requirements to build wheel
  running egg_info
  writing python/src\sphericart.egg-info\PKG-INFO
  writing dependency_links to python/src\sphericart.egg-info\dependency_links.txt
  writing requirements to python/src\sphericart.egg-info\requires.txt
  writing top-level names to python/src\sphericart.egg-info\top_level.txt
  reading manifest file 'python/src\sphericart.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching 'LICENSE'
  adding license file 'LICENSE-APACHE'
  adding license file 'LICENSE-MIT'
  writing manifest file 'python/src\sphericart.egg-info\SOURCES.txt'
  Getting requirements to build wheel ... done
  Running command Preparing metadata (pyproject.toml)
  running dist_info
  creating C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info
  writing C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\PKG-INFO
  writing dependency_links to C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\dependency_links.txt
  writing requirements to C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\requires.txt
  writing top-level names to C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\top_level.txt
  writing manifest file 'C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\SOURCES.txt'
  reading manifest file 'C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching 'LICENSE'
  adding license file 'LICENSE-APACHE'
  adding license file 'LICENSE-MIT'
  writing manifest file 'C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart.egg-info\SOURCES.txt'
  creating 'C:\Users\usnam\AppData\Local\Temp\pip-modern-metadata-o277_q2j\sphericart-0.3.0.dist-info'
  Preparing metadata (pyproject.toml) ... done
Requirement already satisfied: numpy in C:\Users\usnam\.conda\envs\py39\lib\site-packages (from sphericart==0.3.0) (1.24.3)
Building wheels for collected packages: sphericart
  Running command Building wheel for sphericart (pyproject.toml)
  running bdist_wheel
  running build
  running build_py
  copying python\src\sphericart\spherical_harmonics.py -> build\lib.win-amd64-cpython-39\sphericart
  copying python\src\sphericart\_c_lib.py -> build\lib.win-amd64-cpython-39\sphericart
  copying python\src\sphericart\__init__.py -> build\lib.win-amd64-cpython-39\sphericart
  running egg_info
  writing python/src\sphericart.egg-info\PKG-INFO
  writing dependency_links to python/src\sphericart.egg-info\dependency_links.txt
  writing requirements to python/src\sphericart.egg-info\requires.txt
  writing top-level names to python/src\sphericart.egg-info\top_level.txt
  reading manifest file 'python/src\sphericart.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching 'LICENSE'
  adding license file 'LICENSE-APACHE'
  adding license file 'LICENSE-MIT'
  writing manifest file 'python/src\sphericart.egg-info\SOURCES.txt'
  running build_ext
  -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19045.
  -- OpenMP is enabled
  -- march=native is not supported by this compiler
  -- Configuring done (0.3s)
  -- Generating done (0.3s)
  -- Build files have been written to: C:/Users/siosw/sphericart/build/cmake-build
  Microsoft (R)-Build-Engine, Version 16.11.1+3e40a09f8 f\x81r .NET Framework
  Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

    1>Checking Build System
    Building Custom Rule C:/Users/siosw/sphericart/sphericart/CMakeLists.txt
    sphericart.cpp
  C:\Users\usnam\sphericart\sphericart\include\sphericart.hpp(365,1): warning C4820: "sphericart::SphericalHarmonics<float>": 3 Bytes Abstand hinter Datenmember  "sphericart::SphericalHarmonics<float>::normalized" hinzugef\x81gt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(379): message : Siehe Verweis auf die gerade kompilierte Klasse Vorlage-Instanziierung "sphericart::SphericalHarmonics<float>". [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\include\sphericart.hpp(365,1): warning C4820: "sphericart::SphericalHarmonics<double>": 3 Bytes Abstand hinter Datenmember  "sphericart::SphericalHarmonics<double>::normalized" hinzugef\x81gt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(380): message : Siehe Verweis auf die gerade kompilierte Klasse Vorlage-Instanziierung "sphericart::SphericalHarmonics<double>". [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(41,1): warning C4365: "=": Konvertierung von "int" in "size_t", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]        
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(34): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "sphericart::SphericalHarmonics<float>::SphericalHarmonics(size_t,bool)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(379): message : Siehe Verweis auf die gerade kompilierte Klasse Vorlage-Instanziierung "sphericart::SphericalHarmonics<float>". [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(227,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(211): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_array(const T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(163): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_array(const T *,size_t,T *,size_t)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(227,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(256,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(233): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_array_with_gradients(const T *,size_t,T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(180): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_array_with_gradients(const T *,size_t,T *,size_t,T *,size_t)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(256,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(292,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(262): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_array_with_hessians(const T *,size_t,T *,size_t,T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(203): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_array_with_hessians(const T *,size_t,T *,size_t,T *,size_t,T *,size_t)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(292,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(313,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(297): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_sample(const T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(161): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_sample(const T *,size_t,T *,size_t)" 
der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(313,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(341,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(319): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_sample_with_gradients(const T *,size_t,T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(176): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_sample_with_gradients(const T *,size_t,T *,size_t,T *,size_t)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(341,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(375,1): warning C4267: "Argument": Konvertierung von "size_t" nach "int", Datenverlust m”glich [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]   
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(347): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "void sphericart::SphericalHarmonics<float>::compute_sample_with_hessians(const T *,size_t,T *,size_t,T *,size_t,T *,size_t)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(199): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void sphericart::SphericalHarmonics<float>::compute_sample_with_hessians(const T *,size_t,T *,size_t,T *,size_t,T *,size_t)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(375,1): warning C4365: "Argument": Konvertierung von "size_t" in "int", signed/unsigned-Konflikt. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(66,54): error C2065: "M_PI": nichtdeklarierter Bezeichner [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(52): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void compute_sph_prefactors<T>(int,T *)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(34): message : beim Kompilieren der Klasse Vorlage-Memberfunktion "sphericart::SphericalHarmonics<float>::SphericalHarmonics(size_t,bool)" [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(68,57): error C2065: "M_SQRT1_2": nichtdeklarierter Bezeichner [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(70,58): warning C5219: Implizite Konvertierung von "int" in "T", m”glicher Datenverlust. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]      
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(86,26): warning C5219: Implizite Konvertierung von "int" in "T", m”glicher Datenverlust. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]      
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(88,66): warning C5219: Implizite Konvertierung von "int" in "T", m”glicher Datenverlust. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]      
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(303,1): error C3016: "i_sample": Die Indexvariable in der For-Anweisung von OpenMP muss einen ganzzahligen Typ mit Vorzeichen aufweisen. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(60): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void hardcoded_sph<T,false,false,true,0>(const T *,T *,T *,T *,size_t,int,const T *,T *)" 
der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  C:\Users\usnam\sphericart\sphericart\include\templates.hpp(1058,1): error C3016: "i_sample": Die Indexvariable in der For-Anweisung von OpenMP muss einen ganzzahligen Typ mit Vorzeichen aufweisen. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
  C:\Users\usnam\sphericart\sphericart\src\sphericart.cpp(84): message : Siehe Verweis auf die gerade kompilierte Instanziierung "void generic_sph<T,false,false,true,6>(const T *,T *,T *,T *,size_t,int,const T *,T *)" der Funktions-Vorlage. [C:\Users\usnam\sphericart\build\cmake-build\sphericart.vcxproj]
            with
            [
                T=float
            ]
  Traceback (most recent call last):
    File "C:\Users\usnam\.conda\envs\py39\lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 353, in <module>
      main()
    File "C:\Users\usnam\.conda\envs\py39\lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "C:\Users\usnam\.conda\envs\py39\lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 251, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\build_meta.py", line 404, in build_wheel
      return self._build_with_temp_dir(
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\build_meta.py", line 389, in _build_with_temp_dir
      self.run_setup()
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\build_meta.py", line 311, in run_setup
      exec(code, locals())
    File "<string>", line 109, in <module>
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\__init__.py", line 103, in setup
      return distutils.core.setup(**attrs)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 185, in setup
      return run_commands(dist)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\core.py", line 201, in run_commands
      dist.run_commands()
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 969, in run_commands
      self.run_command(cmd)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\dist.py", line 963, in run_command
      super().run_command(command)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
      cmd_obj.run()
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\wheel\bdist_wheel.py", line 368, in run
      self.run_command("build")
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\cmd.py", line 318, in run_command
      self.distribution.run_command(command)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\dist.py", line 963, in run_command
      super().run_command(command)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
      cmd_obj.run()
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\command\build.py", line 131, in run
      self.run_command(cmd_name)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\cmd.py", line 318, in run_command
      self.distribution.run_command(command)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\dist.py", line 963, in run_command
      super().run_command(command)
    File "C:\Users\usnam\AppData\Local\Temp\pip-build-env-a11iraxg\overlay\Lib\site-packages\setuptools\_distutils\dist.py", line 988, in run_command
      cmd_obj.run()
    File "<string>", line 60, in run
    File "C:\Users\usnam\.conda\envs\py39\lib\subprocess.py", line 528, in run
      raise CalledProcessError(retcode, process.args,
  subprocess.CalledProcessError: Command '['cmake', '--build', 'C:\\Users\\siosw\\sphericart\\build\\cmake-build', '--target', 'install']' returned non-zero exit status 1.
  error: subprocess-exited-with-error

  × Building wheel for sphericart (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> See above for output.

  note: This error originates from a subprocess, and is likely not a problem with pip.
  full command: 'C:\Users\usnam\.conda\envs\py39\python.exe' 'C:\Users\usnam\.conda\envs\py39\lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py' build_wheel 'C:\Users\usnam\AppData\Local\Temp\tmp4c98eb8w'
  cwd: C:\Users\usnam\sphericart
  Building wheel for sphericart (pyproject.toml) ... error
  ERROR: Failed building wheel for sphericart
Failed to build sphericart
ERROR: Could not build wheels for sphericart, which is required to install pyproject.toml-based projects
Luthaf commented 9 months ago

Thanks for sharing this! It is actually working much better than I though and almost managing to build the code. The error concerns OpenMP: https://learn.microsoft.com/en-us/cpp/error-messages/compiler-errors-2/compiler-error-c3016, which should be relatively simple to fix.

EDIT: seems that the core of the issue is that MSVC only supports OpenMP 2.0 (https://stackoverflow.com/a/2822064/4692076) and we are using features from more recent versions of the standard.

frostedoyster commented 2 months ago

As mentioned in #129, an experimental version which builds correctly on Windows is available in the build-windows branch