pip failing to install psycopg2-binary on ubuntu 22.04 with python 3.10 [duplicate]
Asked Answered
P

2

5

seeing this on Ubuntu 22.04 which has python 3.10

pip3 install psycopg2-binary==2.8.5                                                                                                                                                            
Defaulting to user installation because normal site-packages is not writeable                                                                                                                                          
Collecting psycopg2-binary==2.8.5                                                                                                                                                                                      
  Using cached psycopg2-binary-2.8.5.tar.gz (381 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-qc0tg_5p/psycopg2_binary.egg-info                                                                                                                                                 
      writing /tmp/pip-pip-egg-info-qc0tg_5p/psycopg2_binary.egg-info/PKG-INFO                                                                                                                                         
      writing dependency_links to /tmp/pip-pip-egg-info-qc0tg_5p/psycopg2_binary.egg-info/dependency_links.txt                                                                                                         
      writing top-level names to /tmp/pip-pip-egg-info-qc0tg_5p/psycopg2_binary.egg-info/top_level.txt                                                                                                                 
      writing manifest file '/tmp/pip-pip-egg-info-qc0tg_5p/psycopg2_binary.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.
Prospero answered 19/9, 2022 at 11:49 Comment(0)
B
14

This is a known issue. Use the binary version instead:

pip install psycopg2-binary

EDIT:

You dont have 'pg_config' which is part of libpq-dev on Ubuntu. Install it with sudo apt-get install libpq-dev and try abgain.

Backfire answered 19/9, 2022 at 11:50 Comment(5)
this IS with the binary ...Prospero
Oh lol, mb! Let me look into it a bit further then...Backfire
all good :) my guess is the build for 3.10 is not present and so it falls back to try to build anyway.. I am willing to build from source but.. just checking with othersProspero
@Prospero Please see my edit.Backfire
I started going this route as well, nice! it says wait 5 minutes and I can give you some points. thanks !Prospero
C
-1

Before starting the binary installation, export PATH like below:

export PATH=$PATH:/usr/pgsql-12/bin/

Note: Change 12 to your current PostgreSQL version.

Clannish answered 19/9, 2022 at 13:19 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.