ITA-Solar / helita

A Python library for solar physics from the Institute of Theoretical Astrophysics, University of Oslo
BSD 3-Clause "New" or "Revised" License
9 stars 17 forks source link

Problem building wheels. Numpy.distutils issue? #51

Closed Artemis201 closed 2 months ago

Artemis201 commented 3 months ago

I'm struggling to install this on my Windows 11 computer with miniconda (my friend on Mac installed it just fine).

I've got Python 3.11.9 installed (to address the depreciated numpy.distutils issue). I also just installed Microsoft Visual Studio for this, but the error may be related to that? It seems to work fine until it gets to "Building Wheels for Collected packages: helita". It exists the subprocess with the below error:

    Building wheels for collected packages: helita
      Building wheel for helita (pyproject.toml) ... error
      error: subprocess-exited-with-error

      × Building wheel for helita (pyproject.toml) did not run successfully.
      │ exit code: 1
      ╰─> [194 lines of output]
          <string>:8: Deprecation
    Warning:

    'numpy.distutils' is deprecated since NumPy 1.23.0, as a result
    of the deprecation of `distutils` itself. It will be removed for
    Python >= 3.12. For older Python versions it will remain present.
    It is recommended to use `setuptools < 60.0` for those Python versions.
    For more details, see:
      https://numpy.org/devdocs/reference/distutils_status_migration.html

After that I get a few dozen warnings or errors like:

    WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'

    INFO: No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils

  WARN: CCompilerOpt.feature_test[1563] : testing failed
        INFO: CCompilerOpt.feature_test[1547] : testing feature 'POPCNT' with flags ()
        WARN: CCompilerOpt.dist_test[630] : CCompilerOpt._dist_test_spawn[764] : Command (C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\bin\HostX86\x64\cl.exe /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Users\vikn0392\AppData\Local\miniconda3\envs\myenv\include -IC:\Users\vikn0392\AppData\Local\miniconda3\envs\myenv\Include -IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\include -IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\um -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\shared -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\winrt -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\cppwinrt /TcC:\Users\vikn0392\AppData\Local\Temp\pip-build-env-jvbvidyg\overlay\Lib\site-packages\numpy\distutils\checks\cpu_popcnt.c /FoC:\Users\vikn0392\AppData\Local\Temp\tmp4w9skjle\Users\vikn0392\AppData\Local\Temp\pip-build-env-jvbvidyg\overlay\Lib\site-packages\numpy\distutils\checks\cpu_popcnt.obj /WX) failed with exit status 2 output ->
        cpu_popcnt.c
    C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\include\xmmintrin.h(79): fatal error C1083: Cannot open include file: 'malloc.h': No such file or directory

     error: Command "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\bin\HostX86\x64\cl.exe /c /nologo /O2 /W3 /GL /DNDEBUG /MD -IC:\Users\vikn0392\AppData\Local\Temp\pip-build-env-jvbvidyg\overlay\Lib\site-packages\numpy\core\include -Ihelita\io/src -IC:\Users\vikn0392\AppData\Local\Temp\pip-build-env-jvbvidyg\overlay\Lib\site-packages\numpy\core\include -Ibuild\src.win-amd64-3.11\numpy\distutils\include -IC:\Users\vikn0392\AppData\Local\miniconda3\envs\myenv\include -IC:\Users\vikn0392\AppData\Local\miniconda3\envs\myenv\Include -IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\include -IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\um -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\shared -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\winrt -IC:\Program Files (x86)\Windows Kits\8.1\\include\\\cppwinrt /Tchelita\io/anapyio.c /Fobuild\temp.win-amd64-cpython-311\Release\helita\io\anapyio.obj" failed with exit status 2

I'm new to python and so I'm not sure if I've included all the information that's relevant. Let me know if I can provide more. Thanks

tiagopereira commented 3 months ago

Helita has never been tested in Windows. It will probably not work.

tiagopereira commented 2 months ago

ef0255e fixed the python 3.12 problem, so it should work for all versions now. At least in Linux and MacOS.