vitroid / GenIce

A swiss army knife to generate proton-disordered ice structures.
MIT License
61 stars 20 forks source link

Installation of GenIce- windows #14

Closed kelkadi closed 1 month ago

kelkadi commented 1 year ago

I am trying to install the GenIce package to python in windows using the pip3 install genice2 but it fails. here is the error message: (can you please assist). Many Thanks.

Collecting genice2 Using cached GenIce2-2.1.7-py2.py3-none-any.whl Requirement already satisfied: yaplotlib>=0.1 in c:\users\100047903\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from genice2) (0.1.2) Requirement already satisfied: wheel in c:\users\100047903\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from genice2) (0.40.0) Collecting cycless Using cached cycless-0.2-py2.py3-none-any.whl (9.3 kB) Collecting pairlist>=0.2.12.4 Using cached PairList-0.2.12.4.tar.gz (10 kB) Preparing metadata (setup.py) ... done Collecting networkx>=2.0.dev20160901144005 Using cached networkx-3.0-py3-none-any.whl (2.0 MB) Requirement already satisfied: numpy in c:\users\100047903\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from genice2) (1.24.2) Collecting openpyscad Using cached openpyscad-0.5.0-py3-none-any.whl (9.7 kB) Collecting tilecycles>=0.1.5.6 Using cached TileCycles-0.1.5.6-py3-none-any.whl Collecting graphstat Using cached graphstat-0.2.1-py2.py3-none-any.whl (3.9 kB) Collecting methodtools Using cached methodtools-0.4.7-py3-none-any.whl Requirement already satisfied: six<2.0.0,>=1.14.0 in c:\users\100047903\appdata\local\packages\pythonsoftwarefoundation.python.3.10_qbz5n2kfra8p0\localcache\local-packages\python310\site-packages (from openpyscad->genice2) (1.16.0) Collecting wirerope>=0.4.7 Using cached wirerope-0.4.7-py3-none-any.whl Building wheels for collected packages: pairlist Building wheel for pairlist (setup.py) ... error error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [23 lines of output] C:\Users\100047903\AppData\Local\Temp\pip-install-2b8vdyuj\pairlist_633079f7f84d47268f3d5d8b5cc75e0a\setup.py:4: DeprecationWarning:

    `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

    from numpy.distutils.misc_util import get_numpy_include_dirs
  C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\lib\site-packages\setuptools\dist.py:771: UserWarning: Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead
    warnings.warn(
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib.win-amd64-cpython-310
  copying pairlist.py -> build\lib.win-amd64-cpython-310
  running build_ext
  INFO: No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
  building 'cpairlist' extension
  error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pairlist Running setup.py clean for pairlist Failed to build pairlist Installing collected packages: wirerope, pairlist, openpyscad, networkx, methodtools, graphstat, cycless, tilecycles, genice2 Running setup.py install for pairlist ... error error: subprocess-exited-with-error

× Running setup.py install for pairlist did not run successfully. │ exit code: 1 ╰─> [25 lines of output] C:\Users\100047903\AppData\Local\Temp\pip-install-2b8vdyuj\pairlist_633079f7f84d47268f3d5d8b5cc75e0a\setup.py:4: DeprecationWarning:

    `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

    from numpy.distutils.misc_util import get_numpy_include_dirs
  C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\lib\site-packages\setuptools\dist.py:771: UserWarning: Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead
    warnings.warn(
  running install
  C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\lib\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_py
  creating build
  creating build\lib.win-amd64-cpython-310
  copying pairlist.py -> build\lib.win-amd64-cpython-310
  running build_ext
  INFO: No module named 'numpy.distutils._msvccompiler' in numpy.distutils; trying from distutils
  building 'cpairlist' extension
  error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
  [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. ╰─> pairlist

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

vitroid commented 1 year ago

Well, the error indicates that Visual C++ 14.0 is required to compile the pairlist module, which is another python package required by GenIce.