Subject: Error while trying to install in 3.11

From: David Raymond <[email-masked]>
Date: Tue, 1 Nov 2022 16:22:46 +0000

I just install Python 3.11, and am trying to install psycopg2 with pip and am getting errors.
Seems to install just fine when I go back to 3.10, but 3.11 is giving me errors.

Seems to be the same error whether I'm trying to install psycopg2 or psycopg2-binary.

This is on Windows. Below is the copy/paste of the pip output for trying both psycopg2 and psycopg2-binary

Install has:
pip: 22.3
setuptools: 65.5.0
wheel: 0.37.1

Any help appreciated.

C:\Program Files\Python311\Scripts>pip install psycopg2
Collecting psycopg2
  Downloading psycopg2-2.9.5.tar.gz (384 kB)
     ---------------------------------------- 384.3/384.3 kB 8.0 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      C:\Program Files\Python311\Lib\site-packages\setuptools\config\setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
        warnings.warn(msg, warning_class)
      running egg_info
      creating C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-oovginp9\psycopg2.egg-info
      writing C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-oovginp9\psycopg2.egg-info\PKG-INFO
      writing dependency_links to C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-oovginp9\psycopg2.egg-info\dependency_links.txt
      writing top-level names to C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-oovginp9\psycopg2.egg-info\top_level.txt
      writing manifest file 'C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-oovginp9\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.

C:\Program Files\Python311\Scripts>pip install psycopg2-binary
Collecting psycopg2-binary
  Downloading psycopg2-binary-2.9.5.tar.gz (384 kB)
     ---------------------------------------- 384.4/384.4 kB 23.4 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [25 lines of output]
      C:\Program Files\Python311\Lib\site-packages\setuptools\config\setupcfg.py:508: SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.
        warnings.warn(msg, warning_class)
      running egg_info
      creating C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-4_lzbwb5\psycopg2_binary.egg-info
      writing C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-4_lzbwb5\psycopg2_binary.egg-info\PKG-INFO
      writing dependency_links to C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-4_lzbwb5\psycopg2_binary.egg-info\dependency_links.txt
      writing top-level names to C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-4_lzbwb5\psycopg2_binary.egg-info\top_level.txt
      writing manifest file 'C:\Users\user\AppData\Local\Temp\pip-pip-egg-info-4_lzbwb5\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.

C:\Program Files\Python311\Scripts>

---

From: Daniele Varrazzo <[email-masked]>
Date: Tue, 1 Nov 2022 19:08:46 +0100

> [...]

Hello,

Psycopg2 packages for Python 3.11 for Windows have not been released yet,
because we are waiting for Appveyor to release their build images.

You can follow the development on
https://github.com/psycopg/psycopg2/issues/1514

Psycopg3 packages for Windows have been released already, because they
build on GitHub instead.

Cheers

-- Danielr