Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem while installing pybinding #61

Open
joyphysics opened this issue Jul 31, 2024 · 5 comments
Open

Problem while installing pybinding #61

joyphysics opened this issue Jul 31, 2024 · 5 comments

Comments

@joyphysics
Copy link

I am trying to install the package on Windows 11. Even I tried to install it on Ubuntu, I am still getting the same error.

I have ->
Python 3.10.11
cmake version 3.30.1
visual studio 2022 17.10.5
and others as well....

pip3 install pybinding
Collecting pybinding
  Using cached pybinding-0.9.5.tar.gz (1.6 MB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: numpy>=1.12 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pybinding) (2.0.1)
Requirement already satisfied: scipy>=0.19 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pybinding) (1.14.0)
Requirement already satisfied: matplotlib>=2.0 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pybinding) (3.9.1)
Requirement already satisfied: pytest>=5.0 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pybinding) (8.3.2)
Requirement already satisfied: contourpy>=1.0.1 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (1.2.1)
Requirement already satisfied: cycler>=0.10 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (0.12.1)
Requirement already satisfied: fonttools>=4.22.0 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (4.53.1)
Requirement already satisfied: kiwisolver>=1.3.1 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (1.4.5)
Requirement already satisfied: packaging>=20.0 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (24.1)
Requirement already satisfied: pillow>=8 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (10.4.0)
Requirement already satisfied: pyparsing>=2.3.1 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (3.1.2)
Requirement already satisfied: python-dateutil>=2.7 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from matplotlib>=2.0->pybinding) (2.9.0.post0)
Requirement already satisfied: iniconfig in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pytest>=5.0->pybinding) (2.0.0)
Requirement already satisfied: pluggy<2,>=1.5 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pytest>=5.0->pybinding) (1.5.0)
Requirement already satisfied: exceptiongroup>=1.0.0rc8 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pytest>=5.0->pybinding) (1.2.2)
Requirement already satisfied: tomli>=1 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pytest>=5.0->pybinding) (2.0.1)
Requirement already satisfied: colorama in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from pytest>=5.0->pybinding) (0.4.6)
Requirement already satisfied: six>=1.5 in c:\users\hp\appdata\local\programs\python\python310\lib\site-packages (from python-dateutil>=2.7->matplotlib>=2.0->pybinding) (1.16.0)
Building wheels for collected packages: pybinding
  Building wheel for pybinding (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [876 lines of output]
.
.
.
error continues . . . . 
.
.
.
      subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '/v:m', '/m']' 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: Failed building wheel for pybinding
  Running setup.py clean for pybinding
Failed to build pybinding
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (pybinding)

Please provide a possible resolution to this issue or provide an alternate way to install the package. Thank you.

@joyphysics joyphysics changed the title Problem with installing pybinding Problem while installing pybinding Jul 31, 2024
@BertJorissen
Copy link
Collaborator

use pip install pybinding-devon a new virtual environment (you can create a virtual environment using python3 -m venv newvenv and then use the python or python.exe in newvenv/bin/python or newenv\Scripts\python.exe)

Please also take in mind that the recent matplotlib version does not work with Pybind11 classes, you have to use matplotlib==3.9.0(which is set automatically when you use pip install pybinding-dev).

I only support python 3.9, 3.10, 3.11 and 3.12. This comes with a pre-compiled binary, to get small preformance benefits, you can compile from source (--no-binary) using the new pybinding-dev release.

Please let me know if this works.
Best
Bert

@joyphysics
Copy link
Author

As per your suggestion, I installed pybinding-dev instead of pybinding, which worked well.

However, I actually want to install and use the BerryEasy package, but it appears to have a dependency on pybinding. When I try to install BerryEasy, it fails due to the missing pybinding dependency. Unfortunately, it seems that BerryEasy does not recognize pybinding-dev as a suitable replacement.

Could you please provide guidance on how to proceed with installing and using BerryEasy given that I have pybinding-dev installed? Is there a workaround or a specific way to configure BerryEasy to work with pybinding-dev or install it without pybinding ?

@BertJorissen
Copy link
Collaborator

you can first install pybinding with pip install pybinding-dev, and then install the dependencies for BerryEasy, pip isntall tqdm, and then you can install BerryEasy without the check for the dependencies, pip install BerryEasy --no-deps

@BertJorissen
Copy link
Collaborator

Also, there is support for the wavefunction and Berry phase in pybinding now, see https://bertjorissen.github.io/pybinding/tutorial/wavefunction.html (work in progress)

@joyphysics
Copy link
Author

Thank you. That works perfectly. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants