Pyrseas icon indicating copy to clipboard operation
Pyrseas copied to clipboard

Fails to Install: Error: pg_config executable not found

Open benjamin-kirkbride opened this issue 1 year ago • 5 comments

Is it possible to use psycopg2-binary instead?

$ pip install pyrseas
Collecting pyrseas
  Downloading Pyrseas-0.9.1-py2.py3-none-any.whl (113 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 113.4/113.4 kB 2.6 MB/s eta 0:00:00
Collecting psycopg2>=2.5
  Using cached psycopg2-2.9.3.tar.gz (380 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [23 lines of output]
      running egg_info
      creating /tmp/pip-pip-egg-info-it0c443n/psycopg2.egg-info
      writing /tmp/pip-pip-egg-info-it0c443n/psycopg2.egg-info/PKG-INFO
      writing dependency_links to /tmp/pip-pip-egg-info-it0c443n/psycopg2.egg-info/dependency_links.txt
      writing top-level names to /tmp/pip-pip-egg-info-it0c443n/psycopg2.egg-info/top_level.txt
      writing manifest file '/tmp/pip-pip-egg-info-it0c443n/psycopg2.egg-info/SOURCES.txt'
      
      Error: pg_config executable not found.
      
      pg_config is required to build psycopg2 from source.  Please add the directory
      containing pg_config to the $PATH or specify the full executable path with the
      option:
      
          python setup.py build_ext --pg-config /path/to/pg_config build ...
      
      or with the pg_config option in 'setup.cfg'.
      
      If you prefer to avoid building psycopg2 from source, please install the PyPI
      'psycopg2-binary' package instead.
      
      For further information please check the 'doc/src/install.rst' file (also at
      <https://www.psycopg.org/docs/install.html>).
      
      [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.

benjamin-kirkbride avatar Aug 20 '22 17:08 benjamin-kirkbride

I see this is documented here: https://pyrseas.readthedocs.io/en/latest/install.html#:~:text=If%20you%20install,before%20installing%20Pyrseas.

I'm going to go ahead and try to install them both locally using psycopg2-binary and see if that works.

benjamin-kirkbride avatar Aug 20 '22 17:08 benjamin-kirkbride

Okay, it does appear to install just fine without having PG installed locally when using psycopg2-binary.

@jmafc any interest in a PR for this?

benjamin-kirkbride avatar Aug 20 '22 17:08 benjamin-kirkbride

I'm afraid that since I haven't installed it recently, and apparently not many others have, this breakage is starting to occur. It's also a side-effect of having discontinued the Travis CI builds (after a long pause, it stopped working and I had trouble resetting it up). I've been considering using GH Actions, but haven't had time/other incentives.

@dvarrazzo can probably answer/explain this better than I can (and that of course, brings up the issue of moving forward to psycopg3).

jmafc avatar Aug 20 '22 17:08 jmafc

To be clear, it works as long as you have Postgres installed locally (or at least libpq), so it's not a big deal, but it does seem like if we could avoid that dependency, we should.

benjamin-kirkbride avatar Aug 20 '22 18:08 benjamin-kirkbride