I am attempting to install psycopg2 for use within a project. I am also using asdf in order to manage my python versions. I have tried doing this inside of a venv but I get the same error so to keep things simple let's just say I want to install it outside of a venv.
❯ cat .tool-versions
nodejs 15.9.0
python 3.10.8
postgres 11.8
❯ which pip
~/.asdf/shims/pip
❯ which pg_config
~/.asdf/shims/pg_config
❯ pg_config --version
PostgreSQL 11.8
❯ pip install psycopg2
Collecting psycopg2
Using cached psycopg2-2.9.5.tar.gz (384 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [9 lines of output]
~/.asdf/installs/python/3.10.8/lib/python3.10/site-packages/setuptools/config/setupcfg.py:463: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
warnings.warn(msg, warning_class)
running egg_info
creating <redacted_temp_folder>/T/pip-pip-egg-info-3tgyoyym/psycopg2.egg-info
writing <redacted_temp_folder>/T/pip-pip-egg-info-3tgyoyym/psycopg2.egg-info/PKG-INFO
writing dependency_links to <redacted_temp_folder>/T/pip-pip-egg-info-3tgyoyym/psycopg2.egg-info/dependency_links.txt
writing top-level names to <redacted_temp_folder>/T/pip-pip-egg-info-3tgyoyym/psycopg2.egg-info/top_level.txt
writing manifest file '<redacted_temp_folder>/T/pip-pip-egg-info-3tgyoyym/psycopg2.egg-info/SOURCES.txt'
Error: b'No version is set for command pg_config\n'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
Everything I can find seems to revolve around installing pg_config or postgresql or some other dependency but no one else seems to have encountered this exact error. The best I can figure is that somehow the process python setup.py egg_info is not using the same $PATH as the root command, maybe because it's working directory is outside of the scope of my .tool-versions? Any help is appreciated.
It appears that the correct way to get pip to find pg_config is to set the postgres version globally:
asdf global postgres 11.8
source
Related
I would like to install nvidia modulus through the bare metal installation (since I dont have a GPU, so I cant setup the docker). So I have to install a fiew pip packages including symengine==0.6.1. I have installed all but symengine, because I have this error :
pip install symengine==0.6.1
Collecting symengine==0.6.1
Using cached symengine-0.6.1.tar.gz (721 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [14 lines of output]
error: Multiple top-level packages discovered in a flat-layout: ['cmake', 'symengine'].
To avoid accidental inclusion of unwanted files or directories,
setuptools will not proceed with this build.
If you are trying to create a single distribution with multiple packages
on purpose, you should not rely on automatic discovery.
Instead, consider the following options:
1. set up custom discovery (`find` directive with `include` or `exclude`)
2. use a `src-layout`
3. explicitly set `py_modules` or `packages` with a list of names
To find more information, look for "package discovery" on setuptools docs.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
I updated setuptools 66.1.1 and pip 22.3.1. I also installed ez_setup 0.9, but couldnt install unroll and then tried the "easy_install -U setuptools" that doesnt find easy_install.
Sometimes I am must use python modules from github projects. I am can do it in my my_requirements.txt as
git+https://github.com/zackhodari/tts_data_tools
And I am wand use python virtual environment for experiments because I am do not want lots of garbage on my machine.
pip install -r my_requirements.txt
This is approach work all right for good quality github projects with good requirements.txt. Unfortunate there lots of other projects with inconsistent requirements.txt. Those projects requires some modules pre-installation for compilation.
Ok. I am wrote in my my_requirements.txt something like
numpy
git+https://github.com/zackhodari/tts_data_tools
and get "module numpy not found" error because PIP do compilation of github project not in my virtual environment.
What I am must do for github projects compilation inside my environment
Here is fulk error message
Collecting git+https://github.com/zackhodari/tts_data_tools (from -r requirements.txt (line 2))
Cloning https://github.com/zackhodari/tts_data_tools to c:\users\XXX\appdata\local\temp\pip-req-build-4kv5zmyx
Running command git clone --filter=blob:none --quiet https://github.com/zackhodari/tts_data_tools 'C:\Users\XXX\AppData\Local\Temp\pip-req-build-4kv5zmyx'
Resolved https://github.com/zackhodari/tts_data_tools to commit 3c1aff21ab0fbed1bbfd2ba8a5a16d0eb610ffe1
Preparing metadata (setup.py) ... done
Collecting numpy
Using cached numpy-1.24.2-cp38-cp38-win_amd64.whl (14.9 MB)
Collecting pyreaper
Using cached pyreaper-0.0.8.tar.gz (124 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [6 lines of output]
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "C:\Users\XXX\AppData\Local\Temp\pip-install-_4t7gi1p\pyreaper_27e0fd80dcb141b98b17dd963414e84f\setup.py", line 8, in <module>
import numpy as np
ModuleNotFoundError: No module named 'numpy'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
It's a bug in pyreaper: it imports numpy before installing it. So you need to install numpy first.
Unfortunately this cannot be done via my_requirements.txt. If you add numpy in it pip downloads and unpacks numpy but not fully install it so other packages that require numpy cannot import it yet until the entire my_requirements.txt is processed. Installation of any package in my_requirements.txt that requires any other package that isn't yet installed will fail.
Either you fully install numpy before all packages that need it. Or you report the bug, wait until it's fixed and then install any packages without pre-installing numpy.
I tried to install bipwallet through pip but it says there is no 'build_py_2to3' in distutils
Defaulting to user installation because normal site-packages is not writeable
Collecting bipwallet
...
Collecting protobuf==3.0.0a3
Using cached protobuf-3.0.0a3.tar.gz (88 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [6 lines of output]
Traceback (most recent call last):
File "<string>", line 2, in <module>
File "<pip-setuptools-caller>", line 34, in <module>
File "/tmp/pip-install-q8v8yny3/protobuf_3f1a8b67130540ab9c93af7fe765918c/setup.py", line 29, in <module>
from distutils.command.build_py import build_py_2to3 as _build_py
ImportError: cannot import name 'build_py_2to3' from 'distutils.command.build_py' (/home/orkhan/.local/lib/python3.11/site-packages/setuptools/_distutils/command/build_py.py)
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
I tried to search in Google but it did not help. I also tried
pip install --upgrade distutils
thinking maybe it's just older version.
P.S. my python version 3.11
It seems as though bipwallet or one of its dependencies (protobuf-3.0.0a3?) wants to use whatever version of setuptools is available rather than pinning a specific version. setuptools v58.0.0 has a breaking change, first included in Python 3.10, where build_py_2to3 was removed.
You have a couple options:
Find the offending library and edit its setup.py to indicate that it should use setuptools<=57.5.0 and retry.
Downgrade your Python installation to 3.9 to get a local version of setuptools prior to the breaking change.
Here are a couple other related posts/links to the issue you're seeing:
https://github.com/mhammond/pywin32/issues/1813
https://bytemeta.vip/repo/StanfordVL/iGibson/issues/227
https://github.com/mobinmbn/bipwallet_fix
I am trying to install Open3D from https://github.com/isl-org/Open3D/tree/master/python because I would like to edit the code therefore I am not installing Open3D from PyPI. I downloaded the file from github to my local files and ran pip install Downloads/Open3D/python. I ran the installation under the python subdirectory because it contain setup.py and requirements.txt. However when I run the command pip install Downloads/Open3D/python, I get this error.
Processing c:\users\md fardin nahid\downloads\open3d\python
Installing build dependencies ... done
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [3 lines of output]
C:\Users\MDFARD~1\AppData\Local\Temp\pip-build-env-35qkg2d4\overlay\Lib\site-packages\setuptools\config\setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
warnings.warn(msg, warning_class)
error in #PYPI_PACKAGE_NAME# setup command: 'NoneType' object has no attribute 'group'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel 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.
I have tried directly installing from the github using pip install "git+https://github.com/isl-org/Open3D.git" which did not work because the directory did not contain setup.py or pyproject.toml.
Anyone know how I can fix this issue? or anyone know any other ways I am able to download Open3D from github so that I can edit the code? I am using anaconda. I am new to this package stuff. Thanks.
Windows 11
pip 22.2.2
python 3.7.15
git version 2.38.1.1
I tried doing "conda install -c conda-forge cartopy in an anaconda prompt, but that does not do anything even though it says done.
In my command prompt, I try pip install cartopy and the message I will put below keeps popping up. I have downloaded one of the cartopy extension packages on uci.edu as well, but that does not seem to work. Also, I have wheel package installed and as far as I have seen all of the dependencies as well, but I could be wrong. Any suggestions would help, thank you.
Error message:
Getting requirements to build wheel ... error
error: subprocess-exited-with-error
× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> [5 lines of output]
setup.py:117: UserWarning: Unable to determine GEOS version. Ensure you have 3.7.2 or later installed, or installation may fail.
warnings.warn(
setup.py:166: UserWarning: Unable to determine Proj version. Ensure you have 8.0.0 or later installed, or installation may fail.
warnings.warn(
Proj version 0.0.0 is installed, but cartopy requires at least version 8.0.0.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× Getting requirements to build wheel 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.
You can resolve this error by downloading the binary for the cartopy library from the link given below
https://www.lfd.uci.edu/~gohlke/pythonlibs/#cartopy
Follow the below steps
(1) Download the appropriate binary for your python version.
(2) After that, open the file explorer and go to downloads.
(3) Do Shift + Right click on mouse and select the option "open a powershell window here".
(4) Once the powershell window is open type the following "pip install " and then do either of the following
(a) Type out the entire name of the wheel file you downloaded.
(b) Type the first 3-4 letters, click Tab and use the up and down arrow button to navigate to correct wheel file you wish to use.
(5) Once the statement "pip install [wheel file name here]" is done, press enter.
(6) If the downloaded wheel file is not correct for your version of python, download the next wheel file from the link given above.
Follow the above steps till you successfully install the Cartopy library.
Like others have said, you need proj installed before installing cartopy.
If you create a conda environment.yml file like this...
name: my_env
channels:
- conda-forge
dependencies:
- python>=3.10
- cartopy
- proj # Required to build cartopy (can't be installed with pip)
then you can create that conda environment with this...
conda env create -f environment.yml