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

pip install errors out on graphviz #37

Open
suekieza opened this issue Sep 26, 2023 · 1 comment
Open

pip install errors out on graphviz #37

suekieza opened this issue Sep 26, 2023 · 1 comment

Comments

@suekieza
Copy link

Having a hard time installing your guys pip, any help on how to get around graphviz would be appreciated.

Microsoft Windows [Version 10.0.19045.3448]
(c) Microsoft Corporation. All rights reserved.

.>pip

Usage:
pip [options]

Commands:
install Install packages.
download Download packages.
uninstall Uninstall packages.
freeze Output installed packages in requirements format.
inspect Inspect the python environment.
list List installed packages.
show Show information about installed packages.
check Verify installed packages have compatible dependencies.
config Manage local and global configuration.
search Search PyPI for packages.
cache Inspect and manage pip's wheel cache.
index Inspect information available from package indexes.
wheel Build wheels from your requirements.
hash Compute hashes of package archives.
completion A helper command used for command completion.
debug Show information useful for debugging.
help Show help for commands.

General Options:
-h, --help Show help.
--debug Let unhandled exceptions propagate outside the main subroutine, instead of logging them
to stderr.
--isolated Run pip in an isolated mode, ignoring environment variables and user configuration.
--require-virtualenv Allow pip to only run in a virtual environment; exit with an error otherwise.
--python Run pip with the specified Python interpreter.
-v, --verbose Give more output. Option is additive, and can be used up to 3 times.
-V, --version Show version and exit.
-q, --quiet Give less output. Option is additive, and can be used up to 3 times (corresponding to
WARNING, ERROR, and CRITICAL logging levels).
--log Path to a verbose appending log.
--no-input Disable prompting for input.
--proxy Specify a proxy in the form scheme://[user:passwd@]proxy.server:port.
--retries Maximum number of retries each connection should attempt (default 5 times).
--timeout Set the socket timeout (default 15 seconds).
--exists-action Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup,
(a)bort.
--trusted-host Mark this host or host:port pair as trusted, even though it does not have valid or any
HTTPS.
--cert Path to PEM-encoded CA certificate bundle. If provided, overrides the default. See 'SSL
Certificate Verification' in pip documentation for more information.
--client-cert Path to SSL client certificate, a single file containing the private key and the
certificate in PEM format.
--cache-dir

Store the cache data in .
--no-cache-dir Disable the cache.
--disable-pip-version-check
Don't periodically check PyPI to determine whether a new version of pip is available for
download. Implied with --no-index.
--no-color Suppress colored output.
--no-python-version-warning
Silence deprecation warnings for upcoming unsupported Pythons.
--use-feature Enable new functionality, that may be backward incompatible.
--use-deprecated Enable deprecated functionality, that will be removed in the future.

.>pip list
Package Version


colab-convert 2.0.5
grpcio 1.48.1
grpcio-tools 1.48.1
json5 0.9.10
Pillow 9.2.0
pip 23.0.1
protobuf 3.20.2
PyQt5 5.15.6
PyQt5-Qt5 5.15.2
PyQt5-sip 12.10.1
PySide2 5.15.2.1
python-dotenv 0.21.0
python-magic 0.4.27
setuptools 57.4.0
shiboken2 5.15.2.1
six 1.16.0
stability-sdk 0.2.2
usd-core 22.5.post1

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

.>pip install PyOpenGL
Collecting PyOpenGL
Downloading PyOpenGL-3.1.7-py3-none-any.whl (2.4 MB)
---------------------------------------- 2.4/2.4 MB 5.0 MB/s eta 0:00:00
Installing collected packages: PyOpenGL
Successfully installed PyOpenGL-3.1.7

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

.>python -m pip install grill
Collecting grill
Downloading grill-0.15.0-py3-none-any.whl (59 kB)
---------------------------------------- 59.8/59.8 kB ? eta 0:00:00
Collecting numpy
Downloading numpy-1.26.0-cp39-cp39-win_amd64.whl (15.8 MB)
---------------------------------------- 15.8/15.8 MB 3.5 MB/s eta 0:00:00
Collecting networkx
Downloading networkx-3.1-py3-none-any.whl (2.1 MB)
---------------------------------------- 2.1/2.1 MB 4.6 MB/s eta 0:00:00
Collecting pygraphviz
Downloading pygraphviz-1.11.zip (120 kB)
---------------------------------------- 120.8/120.8 kB 7.4 MB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Collecting grill-names>=2.6.0
Downloading grill_names-2.6.0-py3-none-any.whl (8.6 kB)
Collecting naming>=0.6
Downloading naming-0.7.0-py3-none-any.whl (14 kB)
Installing collected packages: naming, pygraphviz, numpy, networkx, grill-names, grill
DEPRECATION: pygraphviz is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at pypa/pip#8559
Running setup.py install for pygraphviz ... error
error: subprocess-exited-with-error

× Running setup.py install for pygraphviz did not run successfully.
│ exit code: 1
╰─> [54 lines of output]
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.9
creating build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\agraph.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\graphviz.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\scraper.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\testing.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz_init_.py -> build\lib.win-amd64-3.9\pygraphviz
creating build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_attribute_defaults.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_clear.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_close.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_drawing.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_edge_attributes.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_graph.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_html.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_layout.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_node_attributes.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_readwrite.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_repr_mimebundle.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_scraper.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_string.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_subgraph.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_unicode.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests_init_.py -> build\lib.win-amd64-3.9\pygraphviz\tests
running egg_info
writing pygraphviz.egg-info\PKG-INFO
writing dependency_links to pygraphviz.egg-info\dependency_links.txt
writing top-level names to pygraphviz.egg-info\top_level.txt
reading manifest file 'pygraphviz.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.png' under directory 'doc'
warning: no files found matching '
.txt' under directory 'doc'
warning: no files found matching '.css' under directory 'doc'
warning: no previously-included files matching '
~' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '.svn' found anywhere in distribution
no previously-included directories found matching 'doc\build'
adding license file 'LICENSE'
writing manifest file 'pygraphviz.egg-info\SOURCES.txt'
copying pygraphviz\graphviz.i -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\graphviz_wrap.c -> build\lib.win-amd64-3.9\pygraphviz
running build_ext
building 'pygraphviz._graphviz' extension
creating build\temp.win-amd64-3.9
creating build\temp.win-amd64-3.9\Release
creating build\temp.win-amd64-3.9\Release\pygraphviz
.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DSWIG_PYTHON_STRICT_BYTE_CHAR -DGVDLL -I.\AppData\Local\Programs\Python\Python39\include -I.\AppData\Local\Programs\Python\Python39\include -I.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\ATLMFC\include -I.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\include -I. (x86)\Windows Kits\10\include\10.0.19041.0\ucrt -I. (x86)\Windows Kits\10\include\10.0.19041.0\shared -I. (x86)\Windows Kits\10\include\10.0.19041.0\um -I. (x86)\Windows Kits\10\include\10.0.19041.0\winrt -I. (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt /Tcpygraphviz/graphviz_wrap.c /Fobuild\temp.win-amd64-3.9\Release\pygraphviz/graphviz_wrap.obj
graphviz_wrap.c
pygraphviz/graphviz_wrap.c(3020): fatal error C1083: Cannot open include file: 'graphviz/cgraph.h': No such file or directory
error: command '.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\bin\HostX86\x64\cl.exe' failed with exit code 2
[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.
╰─> pygraphviz

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

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

.>pip install graphciz
ERROR: Could not find a version that satisfies the requirement graphciz (from versions: none)
ERROR: No matching distribution found for graphciz

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

.>pip install graphviz
Collecting graphviz
Downloading graphviz-0.20.1-py3-none-any.whl (47 kB)
---------------------------------------- 47.0/47.0 kB 584.1 kB/s eta 0:00:00
Installing collected packages: graphviz
Successfully installed graphviz-0.20.1

[notice] A new release of pip is available: 23.0.1 -> 23.2.1
[notice] To update, run: python.exe -m pip install --upgrade pip

.>python -m pip install grill
Collecting grill
Using cached grill-0.15.0-py3-none-any.whl (59 kB)
Collecting numpy
Using cached numpy-1.26.0-cp39-cp39-win_amd64.whl (15.8 MB)
Collecting grill-names>=2.6.0
Using cached grill_names-2.6.0-py3-none-any.whl (8.6 kB)
Collecting networkx
Using cached networkx-3.1-py3-none-any.whl (2.1 MB)
Collecting pygraphviz
Using cached pygraphviz-1.11.zip (120 kB)
Preparing metadata (setup.py) ... done
Requirement already satisfied: naming>=0.6 in .\appdata\local\programs\python\python39\lib\site-packages (from grill-names>=2.6.0->grill) (0.7.0)
Installing collected packages: pygraphviz, numpy, networkx, grill-names, grill
DEPRECATION: pygraphviz is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at pypa/pip#8559
Running setup.py install for pygraphviz ... error
error: subprocess-exited-with-error

× Running setup.py install for pygraphviz did not run successfully.
│ exit code: 1
╰─> [54 lines of output]
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.9
creating build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\agraph.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\graphviz.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\scraper.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\testing.py -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz_init_.py -> build\lib.win-amd64-3.9\pygraphviz
creating build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_attribute_defaults.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_clear.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_close.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_drawing.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_edge_attributes.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_graph.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_html.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_layout.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_node_attributes.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_readwrite.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_repr_mimebundle.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_scraper.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_string.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_subgraph.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests\test_unicode.py -> build\lib.win-amd64-3.9\pygraphviz\tests
copying pygraphviz\tests_init_.py -> build\lib.win-amd64-3.9\pygraphviz\tests
running egg_info
writing pygraphviz.egg-info\PKG-INFO
writing dependency_links to pygraphviz.egg-info\dependency_links.txt
writing top-level names to pygraphviz.egg-info\top_level.txt
reading manifest file 'pygraphviz.egg-info\SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.png' under directory 'doc'
warning: no files found matching '
.txt' under directory 'doc'
warning: no files found matching '.css' under directory 'doc'
warning: no previously-included files matching '
~' found anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '.svn' found anywhere in distribution
no previously-included directories found matching 'doc\build'
adding license file 'LICENSE'
writing manifest file 'pygraphviz.egg-info\SOURCES.txt'
copying pygraphviz\graphviz.i -> build\lib.win-amd64-3.9\pygraphviz
copying pygraphviz\graphviz_wrap.c -> build\lib.win-amd64-3.9\pygraphviz
running build_ext
building 'pygraphviz._graphviz' extension
creating build\temp.win-amd64-3.9
creating build\temp.win-amd64-3.9\Release
creating build\temp.win-amd64-3.9\Release\pygraphviz
.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\bin\HostX86\x64\cl.exe /c /nologo /Ox /W3 /GL /DNDEBUG /MD -DSWIG_PYTHON_STRICT_BYTE_CHAR -DGVDLL -I.\AppData\Local\Programs\Python\Python39\include -I.\AppData\Local\Programs\Python\Python39\include -I.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\ATLMFC\include -I.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\include -I. (x86)\Windows Kits\10\include\10.0.19041.0\ucrt -I. (x86)\Windows Kits\10\include\10.0.19041.0\shared -I. (x86)\Windows Kits\10\include\10.0.19041.0\um -I. (x86)\Windows Kits\10\include\10.0.19041.0\winrt -I. (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt /Tcpygraphviz/graphviz_wrap.c /Fobuild\temp.win-amd64-3.9\Release\pygraphviz/graphviz_wrap.obj
graphviz_wrap.c
pygraphviz/graphviz_wrap.c(3020): fatal error C1083: Cannot open include file: 'graphviz/cgraph.h': No such file or directory
error: command '.\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.30.30705\bin\HostX86\x64\cl.exe' failed with exit code 2
[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.
╰─> pygraphviz

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

@chrizzFTD
Copy link
Collaborator

Hi @suekieza, thanks for looking into this project!

pygraphviz requires graphviz to be installed before (pygraphviz is the python interface to the graphviz library) and unfortunately installation is not self contained yet.

Can you confirm if you have installed graphviz before attempting python -m pip install grill, please?

If missing still, for me in Windows, what has worked smoothly in the past is installing graphviz via conda:

conda install --channel conda-forge pygraphviz

Then doing the pip install of grill, which will bring pygraphviz:

python -m pip install grill

But if you're not using conda for environment management, graphviz can be installed separately (via manually downloading binaries or command line) and then pygraphviz can be told where to locate it, some details on this are on their official docs:
https://pygraphviz.github.io/documentation/stable/install.html

Please let me know if any of this helps,

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